1 Maven依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.6</version>
</dependency>
2 实现代码
/**
* 导出多个sheet页数据
*
* @param response
*/
@GetMapping("/exportMultiSheet")
public void exportMultiSheet(HttpServletResponse response) {
try {
//第一个Sheet页数据
List<List<Object>> dataList = new ArrayList<>();
List<Object> headList = new ArrayList<>(Arrays.asList(new Object[]{"表头1", "表头2", "表头3"}));
dataList.add(headList);
//第二个Sheet页数据
List<List<Object>> dataList2 = new ArrayList<>();
List<Object> headList2 = new ArrayList<>(Arrays.asList(new Object[]{"表头1", "表头2", "表头3", "表头4"}));
dataList2.add(headList2);
String fileName = new String("文件名称.xls".getBytes(), "UTF-8");
response.addHeader("Content-Disposition", "filename=" + fileName);
//设置类型,扩展名为.xls
response.setContentType("application/vnd.ms-excel");
//将数据写入sheet页中
ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).build();
WriteSheet writeSheet1 = EasyExcel.writerSheet(0, "sheet1").build();
WriteSheet writeSheet2 = EasyExcel.writerSheet(1, "sheet2").build();
excelWriter.write(dataList, writeSheet1);
excelWriter.write(dataList2, writeSheet2);
excelWriter.finish();
response.flushBuffer();
} catch (Exception e) {
e.printStackTrace();
}
}
3 调试结果