这年头谁还用POI,快来使用国人写的EasyExcel吧,SpringBoot+EasyExcel的快速入门

简介: 这年头谁还用POI,快来使用国人写的EasyExcel吧,SpringBoot+EasyExcel的快速入门

当时觉得还是POI很好用的,但是最近用了easyexcel的时候,一下就被他吸引了,虽然他只能操作excel,但是还是要比poi好用太多,首先poi在处理文件的时候会消耗大量的内存,而easyexcel对他进行了大量的优化,是的运行的时候消耗非常小的内存,如果大家同样是操作excel还是推荐大家使用easyexcel。

下面带大家来入门easyexcel吧。这次实现的功能有四个:文件的读写,导入和导出。


首先我们准备一张表


71e6bf8819894d6e92bb443a5bec0d30.png

我们教程用到的我已经放到我的个人仓库里,欢迎大家自取

https://gitee.com/WangFuGui-Ma/easy-excel-quickstart

第一步,我们创建一个springboot工程

image.png


第二步,导入依赖

      <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里面的一一对应关系


image.png


第四步,编写我们的监听器

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

ee2dde9ea6824f46b8f8f6799e6acccf.png


第五步,读

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


3658cb36e2654ffcadf0f3031f510e39.png47fa4e9ab8aa457d9041412012486ad1.png


第六步,写


448529cdbda2488c9be3fa96415a4018.png

0e0873df6a6b48b08867e58ef431b96a.png


2b6a633bdf504b18a06d303ae4492b67.png

4e16824d30784f5ab204a4894b4aef7e.png


7b1e517199bf402cb1759feeb875a091.png

第七步,导出

4b2d2a68483d4973b5a96a9ec4ce4431.png


243eb746d0874206822cfff8e2a250a4.png

a0717236e8934ef99f40dfe04e1da106.png


第八步,导入


f42c253007ed4a6c83517215cb885756.png

0684144ce0c94f0ab960012aa85a9799.png


相关文章
|
28天前
|
存储 easyexcel Java
SpringBoot+EasyExcel轻松实现300万数据快速导出!
本文介绍了在项目开发中使用Apache POI进行数据导入导出的常见问题及解决方案。首先比较了HSSFWorkbook、XSSFWorkbook和SXSSFWorkbook三种传统POI版本的优缺点,然后根据数据量大小推荐了合适的使用场景。接着重点介绍了如何使用EasyExcel处理超百万数据的导入导出,包括分批查询、分批写入Excel、分批插入数据库等技术细节。通过测试,300万数据的导出用时约2分15秒,导入用时约91秒,展示了高效的数据处理能力。最后总结了公司现有做法的不足,并提出了改进方向。
|
2月前
|
easyexcel Java UED
SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载
在SpringBoot环境中,为了优化大量数据的Excel导出体验,可采用异步方式处理。具体做法是将数据拆分后利用`CompletableFuture`与`ThreadPoolTaskExecutor`并行导出,并使用EasyExcel生成多个Excel文件,最终将其压缩成ZIP文件供下载。此方案提升了导出效率,改善了用户体验。代码示例展示了如何实现这一过程,包括多线程处理、模板导出及资源清理等关键步骤。
|
4月前
|
JavaScript 前端开发 easyexcel
基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的前后端完整过程
本文展示了基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的完整过程,包括后端使用EasyExcel生成Excel文件流,前端通过Blob对象接收并触发下载的操作步骤和代码示例。
722 0
基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的前后端完整过程
|
6月前
|
easyexcel Java Maven
springboot使用EasyExcel导入导出填充,解决导出乱码问题(web)
springboot使用EasyExcel导入导出填充,解决导出乱码问题(web)
746 5
|
6月前
|
前端开发 easyexcel Java
springboot使用EasyExcel导入数据(获取行号)
springboot使用EasyExcel导入数据(获取行号)
614 1
|
6月前
|
Java API Spring
集成EasyPoi(一个基于POI的Excel导入导出工具)到Spring Boot项目中
集成EasyPoi(一个基于POI的Excel导入导出工具)到Spring Boot项目中
547 1
|
6月前
|
easyexcel Java API
SpringBoot集成EasyExcel 3.x:高效实现Excel数据的优雅导入与导出
SpringBoot集成EasyExcel 3.x:高效实现Excel数据的优雅导入与导出
1121 1
|
7月前
|
Java easyexcel 应用服务中间件
【二十五】springboot使用EasyExcel和线程池实现多线程导入Excel数据
【二十五】springboot使用EasyExcel和线程池实现多线程导入Excel数据
910 0
QGS
|
7月前
|
Java easyexcel 关系型数据库
手拉手浅学Springboot+EasyExcel
手拉手浅学Springboot+EasyExcel
QGS
79 1
QGS
|
7月前
|
前端开发 Java easyexcel
Springboot3+EasyExcel由浅入深
Springboot3+EasyExcel由浅入深
QGS
299 1