一、引入easypoi的依赖
<!-- https://mvnrepository.com/artifact/cn.afterturn/easypoi-spring-boot-starter -->
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-spring-boot-starter</artifactId>
<version>4.4.0</version>
</dependency>
如果系统中已经使用了poi,再次引入easypoi会引起jar包冲突,解决方案参考解决easpoi与poi版本冲突问题
二、导出,完整代码
@PostMapping("/export")
public AjaxResult export(@RequestBody String[] times)
{
//封装
List<Map<String, Object>> mapList = new ArrayList<>();
for (String time : times){
//设置导出信息
ExportParams exportParams = new ExportParams();
//导出的sheet名
exportParams.setSheetName(time);
//excel高度
exportParams.setHeight((short) 8);
//excel样式,这里的样式可以不写,使用其默认样式
exportParams.setStyle(ExcelExportMyStylerImpl.class);
Map<String,Object> map = new HashMap<>();
MonthEmpty empty = new MonthEmpty();
empty.setDate(time);
//要导出的数据
List<MonthTBExportVO> monthTBExportVOS = iMonthAcademicService.exportTBCount(empty);
//导出的数据
map.put("data",monthTBExportVOS);
//导出参数
map.put("title",exportParams);
//导出实体
map.put("entity",MonthTBExportVO.class);
mapList.add(map);
}
String str = null;
try {
//传参,导出
Workbook workbook = ExcelExportUtil.exportExcel(mapList, ExcelType.HSSF);
/*下面这一部分就看自己项目中要使用的下载方式了
不同需求可以使用不同方式下载
*/
ExcelUtil<MonthTBExportVO> util = new ExcelUtil<>(MonthTBExportVO.class);
str = "某某某" + ".xls";
//util.getAbsoluteFile(str)是创建了一个本地文件,将流写入
FileOutputStream out = new FileOutputStream(util.getAbsoluteFile(str));
//写入流
workbook.write(out);
out.flush();
out.close();
}catch (Exception e){
e.printStackTrace();
}
return AjaxResult.success(str);
}

2730

被折叠的 条评论
为什么被折叠?



