一 参考文档
https://www.yuque.com/easyexcel/doc/read
二 创建监听器
@Slf4j
public class ExcelStudentDataListener extends AnalysisEventListener<ExcelStudentData> {
/**
* 批量读取时忽略
*/
private static final int BATCH_COUNT = 1000;
List<ExcelStudentData> list = new ArrayList<>();
/**
* 遍历每一行的记录
* @param data
* @param context
*/
@Override
public void invoke(ExcelStudentData data, AnalysisContext context) {
list.add(data);
if(list.size() >= BATCH_COUNT){
// TODO 存储数据库的操作
log.info("存储数据库,并清理内存");
list.clear();
}
}
/**
* 所有数据读取之后的收尾工作
* @param context
*/
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
log.info("存储剩余数据");
log.info("全部数据解析完成");
}
}
三 测试用例
/**
* 功能描述:测试Excel读
*
* @author cakin
* @date 2020/12/1
*/
@Test
public void simpleRead07() {
String fileName = "f:/temp/simpleWrite-07.xlsx";
EasyExcel.read(fileName, ExcelStudentData.class, new ExcelStudentDataListener())
.sheet().doRead();
}
四 测试结果
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储数据库,并清理内存
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 存储剩余数据
[main] INFO com.atguigu.easyexcel.listener.ExcelStudentDataListener - 全部数据解析完成
Process finished with exit code 0