easyexcel
内容摘要
主要解决了poi框架使用复杂,sax解析模式不容易操作,数据量大起来容易OOM,解决了POI并发造成的报错(推荐学习:PHP视频教程)主要解决方式:通过解压文件的方式加载,一行一行的加载,并且
文章正文
主要解决了poi框架使用复杂,sax解析模式不容易操作,数据量大起来容易OOM,解决了POI并发造成的报错(推荐学习:PHP视频教程)
主要解决方式:通过解压文件的方式加载,一行一行的加载,并且抛弃样式字体等不重要的数据,降低内存的占用
EasyExcel优势
注解式自定义操作。
输入输出简单,提供输入输出过程的接口
支持一定程度的单元格合并等灵活化操作
EasyExcel劣势
框架不成熟,1.1.0版本后提供灵活接口的只剩beta版本
依然存在一些bug
没有一套完整的api
ExcelUtil快速使用
maven引用(版本控制内若存在低版本POI,请升级版本和代码,官方POI版本3.17):
<dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>1.1.2-beta5</version> </dependency>
实体类继承BaseRowModel ,对需要导出或者导入的字段增加@ExcelProperty注解,index值为对应excel中的列,value为表头,format为日期格式化
public class PersonDto extends BaseRowModel{ /** id */ @ExcelProperty(index = 0 , value = "id") private String id; /** 姓名 **/ @ExcelProperty(index = 1 , value = "姓名") private String name; /** 生日 **/ @ExcelProperty(index = 2 , value = "生日" , format = "yyyy-MM-dd") private String birth; }
代码注释
[!--zhushi--]