EasyExcel是什么?
快速、简单避免OOM的java处理Excel工具
参考 https://segmentfault.com/a/1190000019472781,https://github.com/alibaba/easyexcel
一、项目需求
从mongo库中查询数据,导出到excel文件中。但是动态导出的excel有多少列、列名是什么、有多少sheet页都需要动态获取。所以生成的excel也必须是动态生成,不能通过注解配置对象映射。而且写入的数据量,有可能达到100W级,使用传统的POI工具,需要把excel数据全部加载到内存空间,内存空间很容易OOM。所以选择了阿里的EasyExcel,据说可以高效的解决POI的OOM问题。
二、测试Demo
1、引入的pom依赖
com.alibaba
easyexcel
1.1.2-beta5
org.apache.poi
poi-ooxml
3.17
2、测试代码
packagecom.movitech.product.datahub.util;
importcom.alibaba.excel.EasyExcelFactory; importcom.alibaba.excel.ExcelReader; importcom.alibaba.excel.ExcelWriter; importcom.alibaba.excel.context.AnalysisContext; importcom.alibaba.excel.context.WriteContext; importcom.alibaba.excel.event.AnalysisEventListener; importcom.alibaba.excel.event.WriteHandler;