EasyExcel导入导出如何实现
时间: 2023-10-13 19:13:52 浏览: 40
EasyExcel 是一个基于Java的简单、省内存的读写Excel的开源项目,可以实现Excel文件的导入和导出。
下面是简单的实现步骤:
1. 引入EasyExcel依赖
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.10</version>
</dependency>
```
2. 定义Excel实体类
```java
@Data
public class ExcelData {
@ExcelProperty("姓名")
private String name;
@ExcelProperty("年龄")
private Integer age;
@ExcelProperty("性别")
private String gender;
}
```
3. 导出Excel
```java
public void exportExcel(HttpServletResponse response) throws IOException {
List<ExcelData> dataList = getDataList();
String fileName = "data.xlsx";
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
EasyExcel.write(response.getOutputStream(), ExcelData.class).sheet("sheet1").doWrite(dataList);
}
```
4. 导入Excel
```java
public void importExcel(InputStream inputStream) throws IOException {
List<ExcelData> dataList = new ArrayList<>();
EasyExcel.read(inputStream, ExcelData.class, new AnalysisEventListener<ExcelData>() {
@Override
public void invoke(ExcelData data, AnalysisContext context) {
dataList.add(data);
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
// do something after all data is read
}
}).sheet().doRead();
// do something with the dataList
}
```
以上是EasyExcel的简单导入导出实现步骤,具体实现还需要根据业务需求进行调整。