easyexcel 根据模板导出_SpringBoot整合easyexcel

什么是easyexcel 什么是easyexcel,easyexcel是阿里开发的一款简易的excel导出的工具,在一般的后台管理中都少不了excel的导出。以前一般用的都是poi做导出的功能,但是这种原生的excel导出excel的功能是在太麻烦了,如果有架构师帮你封装好给你用那还好点。但是这种一般都是自己去整合,而且poi导出excel的功能会有很多bug,就比如最常见的oom异常,...
摘要由CSDN通过智能技术生成

什么是easyexcel

什么是easyexcel,easyexcel是阿里开发的一款简易的excel导出的工具,在一般的后台管理中都少不了excel的导出。

以前一般用的都是poi做导出的功能,但是这种原生的excel导出excel的功能是在太麻烦了,如果有架构师帮你封装好给你用那还好点。

但是这种一般都是自己去整合,而且poi导出excel的功能会有很多bug,就比如最常见的oom异常,导出数据量太多,或者批量导入导出都会有一点问题。

写一个简单的导出就得封装一大片代码可能还有问题。

看看以前写的poi导入

4ddcd55ac878ae938cc972ec31108807.png

public static List importExcel(String fileName) {
            log.info("导入解析开始,fileName:{}",f
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你解答这个问题。 首先,你需要在你的Spring Boot项目中添加EasyExcel的依赖: ```xml <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.4</version> </dependency> ``` 然后,你需要编写一个类来表示你的Excel数据模型,可以像这样: ```java @Data public class ExcelData { private String name; private Integer age; // 其他字段... } ``` 接下来,你需要编写一个Excel导入的Controller,可以像这样: ```java @RestController @RequestMapping("/excel") public class ExcelController { @PostMapping("/import") public String importExcel(@RequestParam("file") MultipartFile file) throws Exception { EasyExcel.read(file.getInputStream(), ExcelData.class, new ExcelDataListener()).sheet().doRead(); return "导入成功"; } private static class ExcelDataListener extends AnalysisEventListener<ExcelData> { private List<ExcelData> list = new ArrayList<>(); @Override public void invoke(ExcelData data, AnalysisContext context) { list.add(data); } @Override public void doAfterAllAnalysed(AnalysisContext context) { // 批量保存数据 } } } ``` 这个Controller中,我们使用`@PostMapping`注解来处理POST请求,使用`@RequestParam`注解来接收文件上传参数。然后,我们通过EasyExcel的`EasyExcel.read(...)`方法来读取Excel文件,使用`ExcelData.class`表示我们要读取的Excel数据模型类,使用`new ExcelDataListener()`来指定数据解析的监听器。在`ExcelDataListener`中,我们使用`List`来保存解析出来的数据,然后在`doAfterAllAnalysed`方法中批量保存数据。 最后,你可以向`/excel/import`发送POST请求,上传Excel文件,即可批量导入数据。 希望我的回答能够帮助到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值