POI的基本使用& EasyPOI集成SpringMVC

这篇博客介绍了如何在SpringMVC项目中使用EasyPOI进行Excel的导出和导入操作。内容涵盖POI基础使用、EasyPOI的导入与删除原有POI包的注意事项、Excel数据的替换与日期处理、头像导出问题的解决,以及如何处理关联表。还详细讲解了如何实现导出功能,包括创建ExcelEmployee和POIDepartment对象,注解导出视图,以及导入功能的实现,包括数据验证和自定义验证处理。
摘要由CSDN通过智能技术生成

POI的使用

先导包

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

通过代码写一个九九乘法表在Excel里面

//    通过代码写一个九九乘法表
    @Test
    public void myTest() throws Exception{
//先创建一个Excel文件
        SXSSFWorkbook wb = new SXSSFWorkbook();
//        创建一张表
        Sheet sheet = wb.createSheet("九九乘法口诀");
//        创建相应的行
        for (int i=1;i<=9;i++){
            Row row = sheet.createRow(i-1);
//创建每行里面的格子
            for (int j=1;j<=i;j++){
                Cell cell = row.createCell(j);
//                在单元格里面填入数据
                cell.setCellValue(i+"*"+j+"="+(i*j));
            }
        }
        FileOutputStream out = new FileOutputStream("temp/99.xlsx");
        wb.write(out);//保存Excel文件
        out.close();//关闭文件流
    }

通过代码读取xlsx文件

//通过代码来读取外部Excel文件
    @Test
    public void testRead() throws Exception{
//      先将文件直接读取到内存中来
        Workbook wb = WorkbookFactory.create(new File("temp/emp.xlsx"));
//      根据文件拿到对应的表
        Sheet sheet = wb.getSheetAt(0);
//        拿到对应的行
//        先通过拿最后一行,得到总行数
        int lastRowNum = sheet.getLastRowNum();
//遍历行
        for (int i=2;i<=lastRowNum;i++){
//            拿到对应的行
            Row row = sheet.getRow(i);
//通过行,拿到每行对应的单元格
//          先通过获取最后一个单元格,来得到每行总的格数
            short lastCellNum = row.getLastCellNum();
//            遍历每一行的每一个单元格
            for (int j=0;j<lastCellNum;j++){
//                拿到该单元格的内容
                Cell cell = row.getCell(j);
                System.out.print(cell.getStringCellValue()+" ");
            }
            System.out.println();
        }

    }

学习怎样使用Easypoi

导入EasyPoi之前要将之前导入的POI包,删除。不然会有冲突

 <!-- easypoi的支持 -->
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-base</artifactId>
      <version>3.2.0</version>
    </dependency>
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-web</artifactId>
      <version>3.2.0</version>
    </dependency>
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-annotation</artifactId>
      <version>3.2.0</version>
    </dependency>

在test里面准备一个domain POIEmployee
写一个EasyPOITest

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值