日记55
项目需要实现用户数据的Excel导入导出功能,对比POI后选择了EasyExcel,因为它能避免大文件导入时的内存溢出问题。首先引入 easyexcel-spring-boot-starter 依赖,创建用户Excel对应的实体类,用 @ExcelProperty 注解映射表头和字段。
编写导出接口:调用 EasyExcel.write 方法指定输出流和实体类,查询用户列表后写入Excel并响应给前端。编写导入接口:用 @RequestParam 接收上传的文件,调用 EasyExcel.read 方法,自定义监听器处理每一行数据,将数据批量插入数据库。
测试时,导出10000条用户数据没有出现内存飙升的情况,导入带格式错误的Excel时,监听器里的异常处理能精准捕获错误行并返回提示。踩坑点:实体类字段类型和Excel单元格类型不匹配,导致导入失败,通过在监听器里做类型转换处理解决
浙公网安备 33010602011771号