发布于 2014-09-04 23:32:26 | 610 次阅读 | 评论: 0 | 来源: 网友投递
EasyPOI
EasyPOI 是一个封装了poi的写excel的API,EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,可以说是2.0版本,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上easypoi可以让大家几乎不写代码的情况下完成Excel的导入导出,Excel的模板导出(制作漂亮的Excel),Word模板的导出,让大家从复杂的POI的接口中解脱出来,同时更迅速的完成工作.
EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,可以说是2.0版本,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上easypoi可以让大家几乎不写代码的情况下完成Excel的导入导出,Excel的模板导出(制作漂亮的Excel),Word模板的导出,让大家从复杂的POI的接口中解脱出来,同时更迅速的完成工作.
EasyPoi的特性
• 注解是基础,让大家见名知意
• 注解是核心,让大家快速开发
• 简单的导出导入接口,可以快速完成
• 简单的数据接口,自定义数据
• Excel模板,美化的Excel,程序一天,Excel1分钟
• Word模板,通知类文件的强大神器
• SpringView集成
EasyPOI希望帮大家解决的问题(这个也是笔者自己遇到的问题),EasyPoi不能帮大家解决100% 的Excel导 入导出问题,但是至少可以解决60%导入导出而且几乎不增加代码量.
主要解决的问题:
• 降低开发门槛
• 缩短开发周期
• 美化统计报表
• 轻松文档导出
EasyPOI 版本信息
版本: 2.0.3
作者: 屈然博(JueYue)
联系邮箱:qrb.jueyue@gmail.com
开源社区: JEECG社区 (JAVA企业快速开发平台)
修改日志
1. 注解的全面更新
2. 新增数据处理接口替换掉了转换函数
3. 新增异常信息
4. 新增缓存处理
5. 表格Styler可以自主覆盖
6. 新增Excel和Word的Spring View
Bug修改
1. 导入数据支持问题
2. 表头单行数据问题
3. Excel模板导出数据摘取问题
代码示例:
@Excel(name="学生姓名") privatejava.lang.Stringname; /**学生性别*/ @Excel(name="学生性别",replace = {"女生_1","男生_0"}) privatejava.lang.Stringsex; @Excel(name="出生日期",exportFormat="yyyy-MM-ddHH:mm:ss",importFormat="yyyy-MM-ddHH:mm:ss") private Date birthday; Excel导出 List<CourseEntity> courses = this.courseService.getListByCriteriaQuery(cq,false); map.put(NormalExcelConstants.FILE_NAME,"用户信息"); map.put(NormalExcelConstants.CLASS,CourseEntity.class); map.put(NormalExcelConstants.PARAMS,newExportParams("课程列表", "导出人:Jeecg", "导出信息")); map.put(NormalExcelConstants.DATA_LIST,courses); returnNormalExcelConstants.JEECG_EXCEL_VIEW;
Excel模板导出
modelMap.put(TemplateExcelConstants.FILE_NAME,"工资统计信息"); modelMap.put(TemplateExcelConstants.PARAMS,newTemplateExportParams("export/template/exportTemp.xls",1)); modelMap.put(TemplateExcelConstants.MAP_DATA,map); returnTemplateExcelConstants.JEECG_TEMPLATE_EXCEL_VIEW;
Word导出示例
modelMap.put(TemplateExcelConstants.FILE_NAME,"课程信息"); modelMap.put(TemplateExcelConstants.PARAMS,newTemplateExportParams("export/template/exportTemp.xls")); modelMap.put(TemplateExcelConstants.MAP_DATA,map); modelMap.put(TemplateExcelConstants.CLASS,CourseEntity.class); modelMap.put(TemplateExcelConstants.LIST_DATA,courses); returnTemplateExcelConstants.JEECG_TEMPLATE_EXCEL_VIEW;