ExcelUtil 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
ExcelUtil 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: GPL
开发语言: Java
操作系统: 跨平台
收录时间: 2017-06-07
提 交 者: 素剑步青尘

ExcelUtil 借助反射和 POI 对 Excel 读取,省略了以往读取 Excel 的繁琐步骤,调用 ExcelUtil 只需要2步,对,你没有看错,2步足以读取到 Excel 的内容。自动赋值,传入对应Model所在路径,即可自动赋值.自动匹配数据类型String,Int,Long,Date,Double等,精准定位报错信息.

【温馨提示】任何个人和公司使用完全免费,禁止任何组织和个人修改后二次发布。

以下情况使用收费:

1.公开声明996的公司,每年收取年费9960元

2.有定制需求的组织或个人,视情况收取1000-10000元。

使用场景:

可以想一下我们现在有个Excel导入任务,比如是导入一个班级的学生花名册,比如学生这个实体类是Student.java 一般的导入是需要每行每列对Excel进行遍历,然后给Student的各个属性进行赋值,然后如果碰到Teacher.java需要导入,难道还要在写一遍遍历?代码又臭又长不说,而且代码冗余很多,现在借助ExcelUtil这个公共类,可以实现优雅,容易的读取.兼容03,07版Excel.大家项目中直接引入maven就可以了.

一、导入调用步骤:

1.本地方式读取

String keyValue ="手机名称:phoneName,颜色:color,售价:price"; 
List list=ExcelUtil.readXls("C://test.xlsx",ExcelUtil.getMap(keyValue),"com.lkx.model.PhoneModel")

2.流方式读取

String keyValue ="手机名称:phoneName,颜色:color,售价:price,时间:sj"; 
Listlist = ExcelUtil.readXls(file.getBytes(), ExcelUtil.getMap(keyValue), "com.lkx.model.PhoneModel");

二、导出调用步骤

1.模拟导出到磁盘位置

List list = new ArrayList();//假装这是一个有数据的集合
String keyValue ="手机名称:phoneName,颜色:color,售价:price"; 
ExcelUtil.exportExcel("d:/testsss.xls",keyValue,list,"com.lkx.model.PhoneModel");

2.在浏览器中直接输出

List list = new ArrayList();//还是假装这是一个有数据的集合
String keyValue ="手机名称:phoneName,颜色:color,售价:price"; 
ExcelUtil.exportExcelOutputStream(response,keyValue,list,"com.lkx.model.PhoneModel","fileName");

其中fileName参数可以省略,省略会以当前时间的年月日时分秒作为文件名称。

这里的response需要调用类传进来,一般是controller(HttpServletResponse response)。

POM引入

    net.oschina.likaixuan    excelutil    2.0.1
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

ExcelUtil 的相关博客

你的ExcelUtil简单、高效、易扩展吗

你的ExcelUtil简单、高效、易扩展吗 Author: Dorae Date: 2018年10月23日12:30:15 转载请注明出处 一、背景 最近接到了和Exc...

基于 POI 封装 ExcelUtil 精简的 Excel 导入导出

注 本文是使用 org.apache.poi 进行一次简单的封装,适用于大部分 excel 导入导出功能。过程中可能会用到反射,如若有对于性能...

【原创】POI操作Excel导入导出工具类ExcelUtil

关于本类线程安全性的解释: 多数工具方法不涉及共享变量问题,至于添加合并单元格方法addMergeArea,使用ThreadLocal变量存储...

Java导入导出Excel工具类ExcelUtil

导出就是将List转化为Excel(listToExcel) 导入就是将Excel转化为List(excelToList) 导入导出中会出现各种各样的问题,比如...

java 全自动生成Excel之ExcelUtil篇(上一篇的升级版 [针对实体类对象的遍历赋值])

看了上一篇随笔之后可以对本篇有更好的了解! 使用的poi的jar包依然是上一篇的poi-3.17.jar.... import pojo.UserPojo(上一篇...

jar包中使用freemarker导出excel 解决路径问题

修改ExcelUtil导出方式为流加载而不是通过文件加载.下面贴出ExcelUtil代码 Configuration config = new Configuration(); ...

崛起于Springboot2.X + ExcelUtil200秒解决导入导出(56)

《SpringBoot2.X心法总纲》 使用ExcelUtil快速实现对文件的导入导出系列。 1、pom文件 <dependency> <groupId>net.oschina.li...

Java POI读取Excel数据到实体类

1、引入依赖 在pom.xml文件中添加POI相关依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</...

Java:Excel文件上传至后台

之前的项目中有遇到上传Excel文件的需求,简单说就是解析一个固定格式的Excel表格,然后存到数据库对应的表中,表格如下: 项...

office工具包开源了,使用Excel导入导出非常方便

common.office 详细介绍 java组件,实现Excel,word,pdf等常用office的 **#目前只完善Excel的导入导出,方便简洁。具体步骤如...

ExcelUtil 的相关问答

还没有任何问答,马上提问

评论 (57)

加载中
朋友,你这个用不了啊。报错java.lang.ClassNotFoundException: org.openxmlformats.schemas.drawingml.x2006.main.ThemeDocument$Factory 还需要自己额外引包么?
07/27 17:26
回复
举报
素剑步青尘软件作者
不需要,进群
08/12 13:08
回复
举报
建议增加单元格属性设置,例如宽度、高度、颜色等
06/16 09:37
回复
举报
素剑步青尘软件作者
可以考虑
06/17 08:42
回复
举报
这个和easyexcel比较有什么优势?
06/10 13:55
回复
举报
素剑步青尘软件作者
1分钟上手那种
06/10 15:52
回复
举报
做过性能测试吗?支持多大数据量的导入导出?
06/10 13:49
回复
举报
素剑步青尘软件作者
目前百万级没有什么问题
06/10 15:52
回复
举报
我已经改造了一版,智能识别表头是否匹配 keyValue 的拓展,表头字段可随意出现其他非导入列,或者缺失表头字段。
04/15 13:50
回复
举报
素剑步青尘软件作者
现在就是默认可以不匹配,不打注解字段即可,可以任意出现非导入列
04/15 14:22
回复
举报
建议加入插入边框和单元格加入颜色
04/02 11:24
回复
举报
大量数据怎样导出
04/01 16:51
回复
举报
素剑步青尘软件作者
一样的导出,50w大概用时6s左右
04/15 13:30
回复
举报
不错哟.建议加上类型转换,比如灵活的日期的转换(你的日期好像是固定转换),比如金额的装换等..
2019/12/10 10:32
回复
举报
素剑步青尘软件作者
嗯,安排下个版本
2019/12/19 09:43
回复
举报
我用的3.0.1版本,上边的示例是错误的,第三个参数不是字符串。要定义class
2019/09/27 15:13
回复
举报
素剑步青尘软件作者
上面的实例是针对2.x版本,3.x版请到Excelutil官网查看文档 http://likaixuan.top/excelUtil
2019/10/31 11:08
回复
举报
请问大哥,看你这个代码是内存模式,如果我要导出10W条,可以使用流模式吗?边组装数据,边向浏览器发送数据,也就是类似视频,边看边下载 边发送数据边下载
2019/07/15 10:39
回复
举报
导出csv吧。 这么大的量
2019/07/15 12:33
回复
举报
支持导出超大数据量到Excel,也不会导致OOM, https://my.oschina.net/feinik/blog/3073939
2019/07/15 13:33
回复
举报
素剑步青尘软件作者
10w量不大的
2019/12/10 09:57
回复
举报
更多评论
57 评论
542 收藏
分享
返回顶部
顶部