1.导入easypoi依赖
<!-- 导入导出 -->
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-web</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>3.0.3</version>
</dependency>
2.设置导出的数据传输对象
@Data
public class FillData {
private String name;
private double number;
}
3.设置导出的excel模板

4.将模板存放在resource中
5.编写导出的方法
/**
* 根据模板导出excel
*/
@Test
public void test(){
FillData fillData = new FillData();
String caseNumber=null;
if (disEventInfoModel.getCaseNumber()!=null&&!disEventInfoModel.getCaseNumber().equals("")){
caseNumber = disEventInfoModel.getCaseNumber();
}
if (caseNumber==null||caseNumber.equals("")) {
caseNumber = UUID.randomUUID().toString().replace("-", "");
}
// TemplateExportParams params = new TemplateExportParams("exceltemplate/模板.xls");
TemplateExportParams params = new TemplateExportParams(ExcelExportUtils.convertTemplatePath("exceltemplate/模板.xls"));
if (params!=null){
objectToMap(fillData);
Workbook workbook = ExcelExportUtil.exportExcel(params, objectToMap(fillData));
export(response, workbook, URLEncoder.encode(caseNumber + ".xls", "UTF-8"));
}
// Excel 导出 通过浏览器下载的形式
public static void export(HttpServletResponse response, Workbook workbook, String fileName) throws IOException {
response.setHeader("Content-Disposition",
"attachment;filename=" + new String(fileName.getBytes("UTF-8"), "iso8859-1"));
response.setContentType("application/vnd.ms-excel;charset=UTF-8");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
BufferedOutputStream bufferedOutPut = new BufferedOutputStream(response.getOutputStream());
workbook.write(bufferedOutPut);
bufferedOutPut.flush();
bufferedOutPut.close();
}
这篇博客介绍了如何使用Easypoi库来实现Excel模板导出功能。首先,博主列出了所需的依赖项,并创建了一个数据传输对象FillData。接着,详细说明了模板的设置和存放位置。然后,展示了导出方法的代码,包括根据模板导出、对象转换为Map以及文件的HTTP响应处理。最后,提供了一个导出Excel并通过浏览器下载的辅助方法。
8567

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



