一对多导出、图片文件等导出详见我上篇文章https://blog.csdn.net/weixin_40760239/article/details/107175835
多sheet导出
@RequestMapping("/export")
public void export(HttpServletResponse response) {
//你要放置的多sheet数据 ???
List<List<TotalReportEntity>> list= null;
List<Map<String, Object>> sheetsList = new ArrayList<>();
for(int i=0;i<list.size();i++){
ExportParams params = new ExportParams();
params.setTitle("各区县指标统计表");
params.setSheetName("sheet名称"+i);
Map<String, Object> sheet = new HashMap<>();
sheet.put("title", params);
sheet.put("entity", TotalReportEntity.class);
//每个sheet的数据
sheet.put("data", list.get(i));
sheetsList.add(sheet);
}
Workbook workbook = ExcelExportUtil.exportExcel(sheetsList, ExcelType.HSSF);
try {
response.setHeader("Content-Disposition", "attachment;filename=" + new String("各区县指标统计表.xls".getBytes(), "ISO8859-1"));
response.setHeader("Pargam", "no-cache");
response.setHeader("Cache-Control", "no-cache");
ServletOutputStream outStream = null;
try {
outStream = response.getOutputStream();
workbook.write(outStream);
} finally {
outStream.flush();
outStream.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
实体类
@Data
@TableName("t_total_report")
public class TotalReportEntity implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(type = IdType.AUTO)
private Integer id;
/**
* 区县
*/
@Excel(name = "单位名称", width = 30)
private String district;
/**
* 抓拍数量
*/
@Excel(name = "抓拍数量(张)", width = 30)
private String captureNum;
。。。。
}