java EasyExcel如何批量导出写入到各个sheet
时间: 2023-07-29 18:07:23 浏览: 91
使用 EasyExcel 批量导出写入到各个 sheet 非常简单,只需要在写入时指定 sheet 名称即可。具体步骤如下:
1. 定义 Excel 实体类,并在类上使用 `@ExcelSheet` 注解指定 sheet 名称,例如:
```
@ExcelSheet("Sheet1")
public class Sheet1Data {
@ExcelProperty("姓名")
private String name;
@ExcelProperty("年龄")
private Integer age;
// 省略 getter 和 setter 方法
}
```
2. 创建写入的 Excel 文件并指定文件路径:
```
String filePath = "D:\\test.xlsx";
File file = new File(filePath);
if (!file.exists()) {
file.createNewFile();
}
```
3. 创建 `ExcelWriter` 对象:
```
ExcelWriter excelWriter = EasyExcel.write(file).build();
```
4. 写入每个 sheet 的数据,使用 `excelWriter.write(List, Class, WriteSheet)` 方法,并在 `WriteSheet` 对象中指定 sheet 名称,例如:
```
// 写入 Sheet1 数据
List<Sheet1Data> sheet1DataList = new ArrayList<>();
//... 添加 sheet1Data 数据到 list 中
WriteSheet sheet1 = EasyExcel.writerSheet("Sheet1").head(Sheet1Data.class).build();
excelWriter.write(sheet1DataList, sheet1);
// 写入 Sheet2 数据
List<Sheet2Data> sheet2DataList = new ArrayList<>();
//... 添加 sheet2Data 数据到 list 中
WriteSheet sheet2 = EasyExcel.writerSheet("Sheet2").head(Sheet2Data.class).build();
excelWriter.write(sheet2DataList, sheet2);
```
5. 最后,关闭 `ExcelWriter` 对象,释放内存资源:
```
excelWriter.finish();
```
以上就是使用 EasyExcel 批量导出写入到各个 sheet 的简单示例。
阅读全文