2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > EasyExcel导出excel表格

EasyExcel导出excel表格

时间:2022-10-26 21:05:04

相关推荐

EasyExcel导出excel表格

传统Excel操作或者解析都是利用Apach POI进行操作,但是使用过这个框架的人都知道,这个框架并不完美,有较多的缺陷:

1、使用步骤繁琐

2、动态写出Excel操作非常麻烦

3、对于新手来说,很难在短时间内上手

4、读写时需要占用较大的内容,当数据量大时容器发生OOM

EasyExcel实现excel导出:

try {//设置头居中WriteCellStyle headWriteCellStyle = new WriteCellStyle();headWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);//设置内容居中WriteCellStyle contentWriteCellStyle = new WriteCellStyle();contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");response.setCharacterEncoding("utf-8");String fileName = URLEncoder.encode("员工表信息", "UTF-8");response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");EasyExcel.write(response.getOutputStream(), BasicSysUserExcelData.class).autoCloseStream(Boolean.FALSE).registerWriteHandler(horizontalCellStyleStrategy).sheet("员工表信息").doWrite(exportList);} catch (Exception e) {response.reset();response.setContentType("application/json");response.setCharacterEncoding("utf-8");System.out.println("导出失败");}

导出对象:

@Data@HeadRowHeight(20)@ContentRowHeight(15)@ColumnWidth(20)@ContentFontStyle(fontHeightInPoints = (short) 12)public class BasicSysUserExcelData {@ExcelProperty(value = "部门名称")private String deptName;@ExcelProperty(value = "部门编码")private Integer deptId;@ExcelProperty(value = "员工姓名")private String actualName;@ExcelProperty(value = "手机号")private String phone;@ExcelProperty(value = "邮箱")private String mail;@ExcelProperty(value = "创建时间")private String createTime;}

更多参考:https://alibaba-easyexcel.github.io/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。