zoukankan      html  css  js  c++  java
  • springboot中使用java操作poi案例(excel数据写入与导出)

    1.maven工程导入依赖

     <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>RELEASE</version>
        </dependency>

    这里导入两个poi的原因是:在excel的表格保存为xls和xlsx两种格式,excel表格早先是xls后来又加入了xlsx的格式,在下面的代码中会有所体现。
    2.编写demo
    @RestController
    @RequestMapping("/POI")
    public class POIController {
       @RequestMapping("/createExcel")
       public void createExcel(){
           //HSSFWorkbook wb = new HSSFWorkbook();
           XSSFWorkbook wb = new XSSFWorkbook();
           XSSFSheet sheets= wb.createSheet("九九乘法表");
           for (int i=1;i<=9;i++){
               XSSFRow row = sheets.createRow(i - 1);
               for (int j = 1; j<= 9; j++) {
                   XSSFCell cell = row.createCell(j - 1);
                   cell.setCellValue(i+"*"+j+"="+i*j);
               }

           }

           try {
               FileOutputStream fileOutputStream = new FileOutputStream("d:\test.xlsx");
               try {
                   wb.write(fileOutputStream);
               } catch (IOException e) {
                   e.printStackTrace();
               }
           } catch (FileNotFoundException e) {
               e.printStackTrace();
           }

       }
    }


    里注意的点是在上图创建excel工作簿的时候有两种方式,如下所示:

      HSSFWorkbook wb = new HSSFWorkbook();//生成xls格式的excel
      XSSFWorkbook wb = new XSSFWorkbook();//生成xlsx格式的excel

    3.poi的整个设计是根据excel表格的特性来做的,大致思路是:

    3.1 通过HSSFWorkbook wb = new HSSFWorkbook()或 XSSFWorkbook wb = new XSSFWorkbook()生成excel工作簿(wb)
    3.2 通过创建好的工作簿去创建工作表(sheet)
    3.3 通过工作表去创建表中的行(row),行里索要填的内容就是单元格的内容(cell)
      最后,提供了工作簿(wb)、工作表(sheet)、表中的行(row)、行内容的单元格(cell)分别的api,自己稍微摸索一下就能
  • 相关阅读:
    SpringBoot异步处理请求
    5本最佳的 Java 面向对象理论和设计模式的书籍
    彻底弄懂 HTTP 缓存机制 —— 基于缓存策略三要素分解法
    Java 性能优化的五大技巧
    Java 8 最佳技巧
    Java 并发的四种风味:Thread、Executor、ForkJoin 和 Actor
    在 Java 8 中避免 Null 检查
    关于创建java线程池问题的思考
    LuoguP1858 多人背包(DP)
    Luogu[YNOI2019]排序(DP,线段树)
  • 原文地址:https://www.cnblogs.com/lijojo6/p/12035649.html
Copyright © 2011-2022 走看看