笔者在工作中常常会给产品跑点数据,但是跑的数据产品一般要求放到Excel文档中,方便观看与统计等。于是笔者写了一个小工具,可以快速的供开发者使用。笔者在开发这个工具的采用的Apache开源的poi这个jar,在此基础上开发的,先讲解我的这个工具该怎么用。
功能:(在我的小工具中,实现了下面三个,但是在这篇博客中我只会讲解第一条的使用方式)
POJO数据写入到Excel中
将Excel中的数据转成POJO
将Excel中的数据转成json文件
1、把查询的数据写入Excel中
1.1、方式1
第一步:创建一个Excel模板
在模板中,配置表头信息可以知道,里面设置的信息主要是导出数据的位置。其中"###"就是代表数据的写入的位置。
第二步:初始化模板信息,并且导入数据
1.2、方式2(强烈推荐此方式)
假设你要导出的数据是User对象中的数据到Excel中,在Excel中有标题与数据,你只要做如下事情即可。
第一步:创建一个模板
这个"###"代表你要把数据写到这个模板的哪一个地方。
第二步:创建POJO
创建POJO,然后在get方法上配置@ExcelResources注解,title代表这张表的这个字段的头信息,order代表这个字段输出的顺序(从左到右)。
第三步:测试
输出数据如下:
注意:在使用这个工具的时候要注意以下几个问题:
1、在使用ExcelResources注解的时候,一定要放在get方法上,我没有实现注解配置在属性上,但是有一个问题,对应boolean类型的数据,在生成get方法的时候没有get前缀,要加上去。
2、我的这个小工具只能操作的是".xls"的版本,“.xlsx”版本操作不了,里面没有做兼容。
针对上面的两个问题,我没有去解决这个问题,因为我觉得小工具够用了就行了。
通过这个小工具,可以很好的屏蔽掉直接操作Excel的api,直接操作Excel的api还是比较繁琐的,里面的一些概念也是比较难懂的,而且在Excel中的数据类型有多种,采用这个工具,你不需要关系数据类型是int、还是String等等。可以充分的提高效率。
上面只演示了将“对象”或者数据导入到Excel中,其实这个小工具还可以将Excel中的数据导出到对象中、另外还可以把Excel中的数据转成json文件(加这个功能也是当时产品提了一个需求,产品会给我一个Excel的数据,然后我转成json文件配置在我们的系统中,由此在里面就写了这个小功能)。这里我就不再一一介绍了。