导入导出Excel数据在实际开发中很常见,之前一直使用POI,直到这次数据量庞大,POI占用内存的问题展露无遗,就尝试了easyExcel。EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 提供的方法也足够正常使用,话不多说,直接上代码。
导入依赖
<!-- easyExcel --> <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>3.1.0</version> </dependency>
配置监听器
@Getter
@Setter
public class ExcelListener<T> extends AnalysisEventListener<T> {
private List<T> data = new ArrayList<>();
@Override
public void invoke(T object, AnalysisContext context) {
data.add(object);
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
}
}
封装读写Excel文件方法
public class ExcelHelper {
public