EasyPOI简单说明

一、什么是EasyPOI?

easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板语言(熟悉的表达式语法),完成以前复杂的写法,虽然不如poi那么自定义,不如jxl那么多标签,但是我们就是写的少,写的少。

二、快速入门

2.1、注解

@Excel

这个是必须使用的注解,如果需求简单只使用这一个注解也是可以的,涵盖了常用的Excel需求,需要大家熟悉这个功能,主要分为基础,图片处理,时间处理,合并处理几块.

@ExcelTarget

限定一个到处实体的注解,以及一些通用设置,作用于最外面的实体.

@ExcelEntity

标记是不是导出excel,标记为实体类,是一个内部属性类,标记是否继续穿透。

@ExcelCollection

一对多的集合注解,用以标记集合是否被数据以及集合的整体排序。

@ExcelIgnore

忽略这个属性,多使用需循环引用中。

2.2 直接上例子

第一步,对象定义

@ExcelTarget(value = "OvertimeRecordExcelDTO")
public class OvertimeRecordExcelDTO {

    @Excel(name = "申请时间", databaseFormat = "yyyyMMddHHmmss", format = "yyyy-MM-dd HH:mm:ss", width = 20, needMerge = true)
    private Date applicationTime;

    @ExcelEntity(name = "员工信息",show = true)
    private UserInfoExcelDTO userInfo;

    @ExcelEntity(name = "加班时长",show = true)
    private TimeExcelDTO time;

    @Excel(name = "加班原因",orderNum = "4", needMerge = true)
    private String reason;

    @Excel(name = "法定假日", orderNum = "5", replace = {"是_1", "否_2"}, needMerge = true)
    private String holidays;

    @Excel(name = "核算方式", orderNum = "6", replace = {"调休_1", "加班费_2"}, needMerge = true)
    private String summaryType;

    @Excel(name = "审批状态",orderNum = "7", replace = {"待审批_1", "通过_2", "拒绝_3", "撤销_4"}, needMerge = true)
    private String status;

    @ExcelCollection(name = "审批流程",orderNum = "8")
    private List<CheckFlowExcelDTO> flowCheckList;  //审批流程解析后

    ……此处为get,set方法……

第二步、生成Excel

Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("加班申请","加班"),OvertimeRecordExcelDTO .class, list);

三、详情说明

以上简单的介绍了EasyPOI的介绍,除注解方式还有模板方式和更加灵活的Map方式,详情说明可以查看期说明文档,文档地址为:http://easypoi.mydoc.io/#category_48830。

转载于:https://my.oschina.net/funwell/blog/2251629

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值