EasyExcel的简单读取操作

EasyExcel是阿里巴巴的一款低内存消耗的Excel处理框架,它通过逐行读取数据并使用AnalysisEventListener监听器来减少内存占用。本文将介绍如何导入依赖、创建实体类、进行写操作测试以及实现读操作,特别关注如何创建ExcelListener类进行数据监听。
摘要由CSDN通过智能技术生成

EasyExcel的简单读取操作

  • Java领域解析、生成Excel比较有名的框架有Apache poi、 jxl等。但他们都存在一个严重的问题就是
    非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发上来后一定会OOM或
    者JVM频繁的full gc。
  • EasyExcel是阿里巴巴开源的一个excel处理框架, 以使用简单、节省内存著称。 EasyExcel能大大减
    少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一
    行行读取数据,逐个解析。
  • EasyExcel采用一行一行的解析模式,并将一行的解析结果以观察者的模式通知处理
    (AnalysisEventListener)。

摘自官网

导入依赖

这个版本之间有个对应关系,不然会报错。

                    <!--xls-->
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi</artifactId>
                <version>3.17</version>
            </dependency>
            <!--xlsx-->
            <dependency>
                <groupId>org.apache.poi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
EasyExcel是一款Java的Excel操作工具,可以方便地读取和写入Excel文件。下面是使用EasyExcel读取数据的基本步骤: 1. 首先,你需要引入EasyExcel的依赖。你可以在你的项目中添加以下Maven依赖: ```xml <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.10</version> </dependency> ``` 2. 创建一个数据模型类,用于存储Excel中每行数据的字段。假设你要读取的Excel文件中包含"姓名"和"年龄"两列数据,你可以创建一个对应的数据模型类,例如: ```java public class Person { private String name; private int age; // 添加构造方法、getter和setter等 } ``` 3. 编写代码读取Excel文件。你可以使用EasyExcel提供的`EasyExcel.read()`方法来读取Excel文件,并通过`sheet()`方法指定要读取的Sheet页。接下来,你可以通过`head()`方法指定Excel文件中每列对应的字段,以及通过`doRead()`方法来执行读取操作。以下是一个简单的示例代码: ```java String fileName = "path/to/your/excel/file.xlsx"; EasyExcel.read(fileName, Person.class, new AnalysisEventListener<Person>() { @Override public void invoke(Person person, AnalysisContext analysisContext) { // 处理每行数据 System.out.println("姓名:" + person.getName() + ",年龄:" + person.getAge()); } @Override public void doAfterAllAnalysed(AnalysisContext analysisContext) { // 读取完成后的操作 } }).sheet().doRead(); ``` 在上面的代码中,你需要将`path/to/your/excel/file.xlsx`替换为你实际的Excel文件路径。 以上就是使用EasyExcel读取Excel数据的基本步骤。你可以根据自己的需求进行扩展和修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值