介绍一、引入maven jar包
二、编写导出的实体类(使用注解形式)
如何在Java中利用EasyPoi实现一个表导出功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、引入maven jar包
& lt; dependency> ,,,& lt; groupId> cn.afterturn ,,,& lt; artifactId> easypoi-base ,,,& lt; version> 3.2.0 & lt;/dependency> & lt; dependency> ,,,& lt; groupId> cn.afterturn ,,,& lt; artifactId> easypoi-web ,,,& lt; version> 3.2.0 & lt;/dependency> & lt; dependency> ,,,& lt; groupId> cn.afterturn ,,,& lt; artifactId> easypoi-annotation ,,,& lt; version> 3.2.0 & lt;/dependency>
二、编写导出的实体类(使用注解形式)
1, DeptUtil类
@ExcelTarget (“deptUtil") public class  DeptUtil { @Excel才能(name =,“部门编号“,,width =, 30,,, needMerge =,真的) private 才能Integer id; @Excel才能(name =,“部门名称“,,width =, 30,,, needMerge =,真的) private 才能;String  deptName; @ExcelCollection才能(name =,“员工信息“) private 才能;List< EmpUtil>,是员工; …省略getter、setter方法
2, EmpUtil类
@ExcelTarget (“empUtil") public class  EmpUtil { @Excel才能(name =,“序号“,,width =, 30日,isColumnHidden =,真的) private 才能Integer id; @Excel才能(name =,“员工姓名“,,width =, 30日,groupName =,“基本信息“) private 才能;String  empName; @Excel才能(name =,“年龄,,,width =, 30日,type =, 10日,groupName =,“基本信息“) private 才能;Integer 年龄; @Excel才能(name =,“入职时间,,,width =, 30日,groupName =,“工作信息,,,format =,“yyyy/MM/dd HH: mm") private 才能;Date  hiredate; @Excel才能(name =,“薪酬“,,width =, 30日,type =, 10日,groupName =,“工作信息“) private 才能BigDecimal 工资; …省略getter、setter方法
3,核心代码
public String 出口(){ ,,,Workbook Workbook =,空; ,,,try { ,,,,,List, exportList =, exportService.exportList (); ,,,,,System.err.println (JSONArray.toJSONString (exportList)); ,,,,,//,创建参数对象(用来设定excel得表得内容等信息) ,,,,,ExportParams deptExportParams =, new ExportParams (); ,,,,,//,设置表得名称 ,,,,,deptExportParams.setSheetName(“员工报表1“); ,,,,,//,创建sheet1使用得地图 ,,,,,Map<字符串,Object>, deptExportMap =, new HashMap<在(); ,,,,,//,标题的参数为ExportParams类型,目前仅仅在ExportParams中设置了sheetName ,,,,,deptExportMap.put (“title",, deptExportParams); ,,,,,//,模版导出对应得实体类型 ,,,,,deptExportMap.put (“entity",, DeptUtil.class); ,,,,,//,表中要填充得数据 ,,,,,deptExportMap.put (“data",, exportList); ,,,,,ExportParams empExportParams =, new ExportParams (); ,,,,,empExportParams.setSheetName(“员工报表2“); ,,,,,//,创建sheet2使用得地图 ,,,,,Map<字符串,Object>, empExportMap =, new HashMap<在(); ,,,,,empExportMap.put (“title",, empExportParams); ,,,,,empExportMap.put (“entity",, DeptUtil.class); ,,,,,empExportMap.put (“data",, exportList); ,,,,,//,将sheet1, sheet2, sheet3使用得地图进行包装 ,,,,,List