Spring Boot整合Easy Excel
- [什么是Easy Excel?](#什么是Easy Excel?)
- [Spring Boot 整合 Easy Excel](#Spring Boot 整合 Easy Excel)
- 参考文献
什么是Easy Excel?
EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。
他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。
Spring Boot 整合 Easy Excel
添加依赖
xml
<dependency>
<!-- 根据最新版本进行修改 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.3.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel-core</artifactId>
<version>3.3.2</version>
</dependency>
</dependency>
读取excel
java
public static List<ExcelData> readExcel(String url, int sheetNo) {
List<ExcelData> dataList = new ArrayList<>(); // 存储读取的Excel数据列表
// Excel 文件路径
String excelFilePath = url;
// 使用 EasyExcel 读取 Excel 文件,并指定要读取的 sheet
EasyExcel.read(excelFilePath, ExcelData.class, new ExcelDataListener(dataList))
.excelType(ExcelTypeEnum.XLSX)
.sheet(sheetNo - 1) // sheet 索引从0开始,所以需要减1
.doRead();
return dataList;
}
写入excel
java
public static void writeToExcel(List<?> dataList, String filePath, String sheetName, Class<?> clazz) {
ExcelWriter excelWriter = null;
try {
// 创建 ExcelWriter 对象,并指定 Excel 文件路径
excelWriter = EasyExcel.write(filePath, clazz).build();
// 创建 WriteSheet 对象,并指定 Excel 工作表名称
WriteSheet writeSheet = EasyExcel.writerSheet(sheetName).build();
// 将数据写入 Excel 文件
excelWriter.write(dataList, writeSheet);
} finally {
// 关闭 ExcelWriter 对象,释放资源
if (excelWriter != null) {
excelWriter.finish();
}
}
}