public class ExcelUtil extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
private static org.slf4j.Logger |
log |
| 构造器和说明 |
|---|
ExcelUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
downloadExcelTemp(javax.servlet.http.HttpServletResponse response,
String tempName)
下载excel 模板
|
static <T> void |
exportFile(String fileName,
List<ExportData<T>> exportData,
Consumer<com.alibaba.excel.write.builder.ExcelWriterBuilder> writeConsumer,
javax.servlet.http.HttpServletResponse response)
excel文件导出(可以包含多个sheet页),可以指定表头,样式等自定义方式
|
static <T> void |
exportFile(String fileName,
List<List<T>> exportData,
javax.servlet.http.HttpServletResponse response,
String... sheetNames)
excel文件导出(可以包含多个sheet页),固定表头(通过实体指定属性的方式)
|
static <T> void |
exportSingleFile(javax.servlet.http.HttpServletResponse response,
String fileName,
ExportData<T> exportData,
Consumer<com.alibaba.excel.write.builder.ExcelWriterBuilder> writeConsumer)
导出excel 下载
使用bean的方式直接下载导出 自定义样式 和表头
|
static <T> void |
exportSingleFile(javax.servlet.http.HttpServletResponse response,
String fileName,
List<T> exportData,
String sheetName)
导出excel 下载
使用bean的方式直接下载导出
ExcelUtil.exportSingleFile(response, null, list, "sheet_1");
|
static <T> void |
exportWithTemp(javax.servlet.http.HttpServletResponse response,
String tempPath,
List<T> exportData,
Object otherInfo)
用模板导出复制的 excel
ExcelUtil.exportWithTemp(response, "temp/air_port.xlsx", list, other);
|
private static com.alibaba.excel.write.style.HorizontalCellStyleStrategy |
getExportDefaultStyle()
配置默认的excel表格样式对象
|
static <T> List<T> |
importExcel(org.springframework.web.multipart.MultipartFile file,
Class<T> clazz)
通过实体对象,直接读取导入的excel
List<UserImportDto> list = ExcelUtil.importExcel(multipartFile, UserImportVo.class);
|
static <T,U> ImportExcelResult<U> |
importExcel(org.springframework.web.multipart.MultipartFile file,
Function<T,U> function,
Class<T> clazz)
导入excel
导入的实体bean 需要转化成db存储对象
ImportExcelResult<UserImportDto> result = ExcelUtil.importExcel(multipartFile, f -> {
UserImportDto dto = PojoUtil.copyBean(f, UserImportDto.class);
dto.setNonce(SnowFlake.genId());
return dto;
} , UserImportVo.class);
|
private static void |
setResponse(javax.servlet.http.HttpServletResponse response,
String fileName)
设置 response
|
public static <T> List<T> importExcel(org.springframework.web.multipart.MultipartFile file, Class<T> clazz)
List<UserImportDto> list = ExcelUtil.importExcel(multipartFile, UserImportVo.class);
T - 导入实体类型file - 上传的文件clazz - 导入实体类型public static <T,U> ImportExcelResult<U> importExcel(org.springframework.web.multipart.MultipartFile file, Function<T,U> function, Class<T> clazz)
导入的实体bean 需要转化成db存储对象
ImportExcelResult<UserImportDto> result = ExcelUtil.importExcel(multipartFile, f -> {
UserImportDto dto = PojoUtil.copyBean(f, UserImportDto.class);
dto.setNonce(SnowFlake.genId());
return dto;
} , UserImportVo.class);
T - 导入实体类型U - db实体类型file - 上传的文件function - 导入的实体bean 转为db的entityclazz - 导入实体类型public static <T> void exportWithTemp(javax.servlet.http.HttpServletResponse response,
String tempPath,
List<T> exportData,
Object otherInfo)
ExcelUtil.exportWithTemp(response, "temp/air_port.xlsx", list, other);
T - 数据集合response - HttpServletResponsetempPath - 模板名称exportData - 导出的数据集合otherInfo - 要导出的单个对象数据 可以为nullpublic static <T> void exportSingleFile(javax.servlet.http.HttpServletResponse response,
String fileName,
List<T> exportData,
String sheetName)
ExcelUtil.exportSingleFile(response, null, list, "sheet_1");
T - 实体类型response - responsefileName - 文件名称exportData - 导出数据sheetName - sheet 名称public static <T> void exportSingleFile(javax.servlet.http.HttpServletResponse response,
String fileName,
ExportData<T> exportData,
Consumer<com.alibaba.excel.write.builder.ExcelWriterBuilder> writeConsumer)
response - responsefileName - 文件名称exportData - 导出数据writeConsumer - 样式等定义public static <T> void exportFile(String fileName, List<List<T>> exportData, javax.servlet.http.HttpServletResponse response, String... sheetNames)
T - 类型fileName - 导出文件名exportData - 需要导出数据response - responsesheetNames - sheet页的名称,为空则默认以:sheet + 数字规则命名public static <T> void exportFile(String fileName, List<ExportData<T>> exportData, Consumer<com.alibaba.excel.write.builder.ExcelWriterBuilder> writeConsumer, javax.servlet.http.HttpServletResponse response)
T - 类型fileName - 导出文件名exportData - 需要导出数据response - responsepublic static void downloadExcelTemp(javax.servlet.http.HttpServletResponse response,
String tempName)
response - HttpServletResponsetempName - 模板路径private static void setResponse(javax.servlet.http.HttpServletResponse response,
String fileName)
response - responsefileName - 文件名private static com.alibaba.excel.write.style.HorizontalCellStyleStrategy getExportDefaultStyle()
Copyright © 2024. All rights reserved.