文档章节

[Java][开源项目]支持excel几百列配置化方式,导成List<VO>的工具,方便开发

z
 zemel
发布于 2016/03/22 17:59
字数 362
阅读 45
收藏 1

周末的时候 将excel导出相关的功能整理了一下,发布成一个开源工具,看下方介绍:

地址:http://git.oschina.net/duololo/epf

功能说明

将excel中的行数据,导入成List<VO>,主要应对n多列导出代码维护、开发方便的问题

目录说明

  • kit 模块:基础工具类

  • kit-excel 模块:excel导入导出工具类

使用

  1. git clone https://git.oschina.net/duololo/epf.git

  2. 导入到IntelliJ Idea中

  3. 运行com.zfer.kit.excel.importor.ExcelTemplateImportorTest

相关测试方法

下面是一个测试示例:

1.StudentNullAnnoVO.java

public class StudentNullAnnoVO {
    private int id;
    private String name;
    private int age;
    private String clazz;
    private String company;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    ....

2.excel模板

标示哪一列代表哪个字段(可以到项目中寻找student_template.xls具体查看)

| A  | B    | C   |   D   |    E   |
| id | name | age | clazz | company |
| 序号 | 姓名 | 年龄 | 班级 | 公司 |
| required | required | required | required |

3.调用

@Test
public void testImportExcel2003() throws Exception {
    ExcelAbstractImportor<StudentNullAnnoVO> util = new ExcelTemplateImportor<StudentNullAnnoVO>();// 创建excel导入工具类
    util.setExcelEntityClass(StudentNullAnnoVO.class);//设置导出的实体类型
    util.setTemplateExcelInputStream(templateFis);//设置模板
 
    util.importExcel("学生信息0", fis2003);// 导入
    List<StudentNullAnnoVO> list = util.getExcelRightDataList();//获取校验正确的数据
    List<StudentNullAnnoVO> allList = util.getExcelAllDataList();//获取所有的数据
 
    assertEquals(
            list.toString(),
            "[StudentVO [id=1, name=柳波, company=2009-10-09, age=18, clazz=五期提高班], StudentVO [id=2, name=柳波, company=2016-08-09, age=29, clazz=五期提高班]]");
 
    ExcelImportSheetErrorMsg error = util.getExcelImportSheetErrorMsg();
    assertEquals("{}", error.getExcelImportRowErrorMsgMap().toString());
}

 

© 著作权归作者所有

z
粉丝 1
博文 18
码字总数 14356
作品 0
浦东
高级程序员
私信 提问
快捷方便的Excel导入导出工具 Easy-Xls 1.0 版本发布

EasyXls 使用EasyXls可以使你很方便的操作Excel。本项目目的是解决简单的(不带任何样式)xls文件的导入导出。 处理XML时由于使用了JAXB,所以需要使用jdk1.6u14以上版本。 JAXB处理中文xml...

Liuzh_533
2014/10/09
7.5K
21
Java对象和Excel转换工具XXL-EXCEL

《Java对象和Excel转换工具XXL-EXCEL》 ![donate](http://

许雪里
2017/09/13
690
0
jxl导入/导出Excel(Maven)

About jxl is a pure java 5 super-project that includes Enclosure, Peermi, Enshell, and Xlp. jxl && POI jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Exc......

coderzs
2017/08/31
0
0
推荐6款常用的Java开源报表制作工具

1.JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其他IDE报表工具一样来制作报表。JasperReports支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前Java开发...

李长春
2012/02/09
1K
0
GrapeCity Documents for Excel 文档API组件 V2.2 新特性介绍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/powertoolsteam/article/details/96150843 GrapeCity Documents for ...

powertoolsteam
07/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

自定义ApiBoot Logging链路以及单元ID生成策略

ApiBoot Logging会为每一个请求都对应创建链路编号(TraceID)以及单元编号(SpanID),用于归类每一次请求日志,通过一个链路下日志单元的Parent SpanID可以进行上下级关系的梳理。 前文回顾...

恒宇少年
19分钟前
6
0
浅谈 Application 和 activity

对于 在 Application初始化一些变量,为什么不可以放在activity 或者其他的组件里呢? 这里就根据个人的理解来讲述一下,欢迎补充指正。 首先 activity 是以栈的形式出现,一个app应用会有多...

MrLins
19分钟前
5
0
Allegro的脚本文件内容里都有哪些

小伙伴们在使用Allegro的时候是否经常用到脚本文件夹呢?scr的用法其实可真不简单。。。 首先脚本文件的运行模式就存在很多种,比如不提示错误信息,不弹出确认对画框(这样很有利于我们执行...

demyar
20分钟前
12
0
微信升级外链管理规范,「砍一刀帮我加速」要被禁止了

原创: 蒋鸿昌 首发:「知晓程序」公众号 - 最好的微信新商业媒体 几天前,知名互联网评论人阑夕模仿皮尤研究中心(Pew Research Center)在美国做的互联网通识调查问卷,做了一份中文版问卷...

知晓云
21分钟前
8
0
CentOS 7接投影仪

我将一台安装着CentOS 7图形界面的惠普笔记本电脑当桌面使用。最近,想要连接投影仪时却遇到了问题。笔记本有一个HDMI接口。我买了一个HDMI---->VGA的转接线,连上笔记本电脑后,屏幕一直在闪...

大别阿郎
25分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部