首页 > 经验记录 > java > 在java中使用Apache POI导出Excel文档,基本的工具类与Annotation封装,可对任意简单对象直接使用

在java中使用Apache POI导出Excel文档,基本的工具类与Annotation封装,可对任意简单对象直接使用

做了个导出Excel文档的需求

于是写了个泛用性挺高的工具,只要是简单对象都没问题。即对象Field的类型都为基本数据类型及其包装类、String、Date这些就可以。要是对象里边还有集合啊、对象啊啥的就不行了。

挺简单的,就懒得传到Github了,写篇博客记录一下。

 

既然要使用apache  poi,,首先就得导入依赖

XML:

用Gradle的话就在dependencies中加入这个:

 

这是我写的注解,使用在成员属性上。

name为Excel中该属性的列名,会在第一行并且加粗放大显示。num是列号,从0开始。

在某属性上写 @ExcelParam(name=”价格”,num=1) 这样的注解,则表示该属性会在 Excel表格 的第二列,第一行标题会显示加粗放大的”价格

只有加了注解的属性会被下面我封装的工具所读取。没有加注解的不会,这样就实现了一个自由的定制。

并且随意指定列名和该属性处于哪一列,可以说实现了大部分简单的 Excel 生成需求了

 

必要的注解加上后就可以直接使用了。

只需要调用 ExcelCreateUtil.toExcel() 方法,将对象集合传入进来就行了。他将返回 HSSFWorkbook  对象,即 Excel 对象(.xls为后缀格式的)

对象集合中的对象,那肯定需要某些属性加了 @ExcelParam 注解,不然他什么都不会做。只会返回一个空的 Excel 文档回来。

成功返回 HSSFWorkbook 对象后可使用它的 write() 方法将内容输出到输出流之中,之后的操作都随意了,可以输出到响应的流中返回给客户端让其下载,也可以输入到文件流中保存在本地。只要文件名是以.xls结尾就行。

 


EA PLAYER &

历史记录 [ 注意:部分数据仅限于当前浏览器 ]清空

      00:00/00:00