easyExcel批量导入实现
时间: 2023-07-20 19:26:01 浏览: 132
EasyExcel 是一款基于 Java 的 Excel 操作工具,可以方便地进行 Excel 的读写操作。以下是使用 EasyExcel 批量导入实现的步骤:
1. 引入 EasyExcel 依赖
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.3.0</version>
</dependency>
```
2. 创建实体类
根据 Excel 中的列名和顺序,创建与之对应的实体类。
3. 创建 ExcelListener
继承 AnalysisEventListener 类,重写 invoke 方法,将读取到的 Excel 数据封装到实体类中。
```java
public class ExcelListener extends AnalysisEventListener<User> {
private List<User> userList = new ArrayList<>();
@Override
public void invoke(User user, AnalysisContext analysisContext) {
userList.add(user);
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
// 数据处理完毕后的操作
}
public List<User> getUserList() {
return userList;
}
}
```
4. 执行导入操作
通过 EasyExcel 提供的 ReadExcel 接口,将 Excel 文件读取并解析,将数据封装到实体类中。
```java
// 构建 Excel 文件输入流
InputStream inputStream = new FileInputStream("user.xlsx");
// 构建 Excel Listener
ExcelListener excelListener = new ExcelListener();
// 构建 ExcelReader
ExcelReader excelReader = new ExcelReader(inputStream, null, excelListener);
// 读取 Excel 文件
excelReader.read();
// 获取读取到的数据
List<User> userList = excelListener.getUserList();
```
5. 数据入库
将读取到的数据入库。
以上就是使用 EasyExcel 实现批量导入的步骤,代码示例中的 User 类是一个示例,实际使用时需要根据 Excel 中的列名和顺序创建对应的实体类。
阅读全文