上次写了一篇文章来讲解poi的:
Java操作Excel(Apache Poi详解)
当时觉得还是POI很好用的,但是最近用了easyexcel的时候,一下就被他吸引了,虽然他只能操作excel,但是还是要比poi好用太多,首先poi在处理文件的时候会消耗大量的内存,而easyexcel对他进行了大量的优化,是的运行的时候消耗非常小的内存,如果大家同样是操作excel还是推荐大家使用easyexcel。
下面带大家来入门easyexcel吧。这次实现的功能有四个:文件的读写,导入和导出。
首先我们准备一张表

我们教程用到的表我已经放到我的个人仓库里,欢迎大家自取
https://gitee.com/WangFuGui-Ma/easy-excel-quickstart
第一步,我们创建一个springboot工程

第二步,导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- EasyExcel -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.6</version>
</dependency>
<!-- lombok 优雅编程 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
第三步,编写我们的实体类
实体类对应的就是excel里面的一一对应关系

第四步,编写我们的监听器
这个监听器的作用就是在我们读数据的时候会执行里面的invoke方法,全部读完之后,会调用doAfterAllAnalysed方法

第五步,读
我们来读我们的文件并且将里面的内容用json格式返回到前端


第六步,写




如果导出文件名乱码,可更改为
response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(fileName,"utf-8") + ".xlsx");

第七步,导出



第八步,导入


本文介绍了使用Spring Boot操作Excel文件的方法,相比POI,该方法对内存消耗进行了大量优化。教程实现了文件的读写、导入和导出功能,包括创建Spring Boot工程、导入依赖、编写实体类和监听器等步骤,还给出了教程所用表格的仓库地址。
468

被折叠的 条评论
为什么被折叠?



