<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Hutool Java工具類庫(kù)導(dǎo)出Excel,超級(jí)簡(jiǎn)單!

          共 2238字,需瀏覽 5分鐘

           ·

          2021-08-11 00:16


          前言

          在開(kāi)發(fā)應(yīng)用系統(tǒng)的時(shí)候,導(dǎo)出文件是必不可放的功能。

          以前用過(guò)POI、easyexcel等工具的導(dǎo)入導(dǎo)出功能,但總感覺(jué)太麻煩了,代碼特別多,感覺(jué)并不是很好用。

          今天給大家介紹一款新工具,java工具類庫(kù)Hutool。


          Hutool簡(jiǎn)介


          Hutool是一個(gè)小而全的Java工具類庫(kù),通過(guò)靜態(tài)方法封裝,降低相關(guān)API的學(xué)習(xí)成本,提高工作效率,使Java擁有函數(shù)式語(yǔ)言般的優(yōu)雅,讓使用者更輕松。

          Hutool中的工具方法來(lái)自于每個(gè)用戶的精雕細(xì)琢,它涵蓋了Java開(kāi)發(fā)底層代碼中的方方面面,它既是大型項(xiàng)目開(kāi)發(fā)中解決小問(wèn)題的利器,也是小型項(xiàng)目中的效率擔(dān)當(dāng);

          Hutool是項(xiàng)目中“util”包友好的替代,它節(jié)省了開(kāi)發(fā)人員對(duì)項(xiàng)目中公用類和公用工具方法的封裝時(shí)間,使開(kāi)發(fā)專注于業(yè)務(wù),同時(shí)可以最大限度的避免封裝不完善帶來(lái)的bug。

          使用

          首先在POM.xml中加入GAV

          <dependency>

          <groupId>cn.hutool</groupId>

          <artifactId>hutool-all</artifactId>

          <version>5.0.7</version>

          </dependency>

          <dependency>

          <groupId>org.apache.poi</groupId>

          <artifactId>poi-ooxml</artifactId>

          <version>4.1.1</version>

          </dependency>

          <dependency>

          <groupId>org.apache.poi</groupId>

          <artifactId>poi-ooxml-schemas</artifactId>

          <version>3.17</version>

          </dependency>

          然后在控制層使用就行

          @RequestMapping("/export")

          @ResponseBody

          public void export(HttpServletResponse response){

          List<User> list = new ArrayList<>();

          list.add(new User("zhangsan","1231",new Date()));

          list.add(new User("zhangsan1","1232",new Date()));

          list.add(new User("zhangsan2","1233",new Date()));

          list.add(new User("zhangsan3","1234",new Date()));

          list.add(new User("zhangsan4","1235",new Date()));

          list.add(new User("zhangsan5","1236", DateUtil.date(new Date())));

          // 通過(guò)工具類創(chuàng)建writer,默認(rèn)創(chuàng)建xls格式

          ExcelWriter writer = ExcelUtil.getWriter();

          //自定義標(biāo)題別名

          writer.addHeaderAlias("name", "姓名");

          writer.addHeaderAlias("age", "年齡");

          writer.addHeaderAlias("birthDay", "生日");

          // 合并單元格后的標(biāo)題行,使用默認(rèn)標(biāo)題樣式

          writer.merge(2, "申請(qǐng)人員信息");

          // 一次性寫(xiě)出內(nèi)容,使用默認(rèn)樣式,強(qiáng)制輸出標(biāo)題

          writer.write(list, true);

          //out為OutputStream,需要寫(xiě)出到的目標(biāo)流

          //response為HttpServletResponse對(duì)象

          response.setContentType("application/vnd.ms-excel;charset=utf-8");

          //test.xls是彈出下載對(duì)話框的文件名,不能為中文,中文請(qǐng)自行編碼

          String name = StringUtils.toUtf8String("申請(qǐng)學(xué)院");

          response.setHeader("Content-Disposition","attachment;filename="+name+".xls");

          ServletOutputStream out= null;

          try {

          out = response.getOutputStream();

          writer.flush(out, true);

          } catch (IOException e) {

          e.printStackTrace();

          }finally {

          // 關(guān)閉writer,釋放內(nèi)存

          writer.close();

          }

          //此處記得關(guān)閉輸出Servlet流

          IoUtil.close(out);

          }

          效果

          瀏覽 29
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  永久免费看黄色 | 人人草人人搞人人爱 | 香蕉视频911 | 丁香五月激情戏91 | 伊人婷婷成人网 |