EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,可以说是2.0版本,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上easypoi可以让大家几乎不写代码的情况下完成Excel的导入导出,Excel的模板导出(制作漂亮的Excel),Word模板的导出,让大家从复杂的POI的接口中解脱出来,同时更迅速的完成工作.
EasyPoi的特性
• 注解是基础,让大家见名知意
• 注解是核心,让大家快速开发
• 简单的导出导入接口,可以快速完成
• 简单的数据接口,自定义数据
• Excel模板,美化的Excel,程序一天,Excel1分钟
• Word模板,通知类文件的强大神器
• SpringView集成
easypoi在项目中的应用:
需要引入的jar包:
<!--easypoi导出excel-->
<!--easypoi-base 导入导出的工具包,可以完成Excel导出,导入,Word的导出,Excel的导出功能-->
<dependency>
<groupId>org.jeecg</groupId>
<artifactId>easypoi-base</artifactId>
<version>2.3.1</version>
</dependency>
<!--easypoi-web 耦合了spring-mvc 基于AbstractView,极大的简化spring-mvc下的导出功能-->
<dependency>
<groupId>org.jeecg</groupId>
<artifactId>easypoi-web</artifactId>
<version>2.3.1</version>
</dependency>
<!--easypoi-annotation 基础注解包,作用与实体对象上,拆分后方便maven多工程的依赖管理-->
<dependency>
<groupId>org.jeecg</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>2.3.1</version>
</dependency>
然后在实体类中添加easypoi的注解:
@ExcelTarget("summaryexcel")
@Data
public class SummaryExcel {
@Excel(name = "日期", orderNum = "1", mergeVertical = true, isImportField = "date")
private String date;//当天日期
@Excel(name = "能源类型", orderNum = "2", mergeVertical = true, isImportField = "type")
private String type; // 能源类型
@Excel(name = "能源用量", orderNum = "3", mergeVertical = true, isImportField = "sum")
private Double sum; // 用量
}
然后就可以在controller层直接使用easypoi:
@GetMapping("getexcel")
public void download(HttpServletRequest request, HttpServletResponse response,String start,String end) throws Exception {
// 告诉浏览器用什么软件可以打开此文件
response.setHeader("content-Type", "application/vnd.ms-excel");
// 下载文件的默认名称
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("数据表","UTF-8") + ".xls");
//编码
response.setCharacterEncoding("UTF-8");
List<SummaryExcel> list = summaryService.summaryexcel(start,end);
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), SummaryExcel.class, list);
workbook.write(response.getOutputStream());
}
这样一个简单的用easypoi实现excel导出就完成了。
easypoi在开源中国:https://www.oschina.net/news/54995/jeecg-easypoi-2-0-3
easypoi文档:http://easypoi.mydoc.io/
来源:oschina
链接:https://my.oschina.net/u/4277474/blog/3287752