Java操作大数据量Excel导入导出万能工具类(完整版)
Java操作大数据量Excel导入导出万能工具类(完整版)
转载自:https://blog.****.net/JavaWebRookie/article/details/80843653
更新日志:(代码随时更新、优化、修复bug、不明白的代码逻辑、欢迎评论或者私信我)
- 1.response.reset();注释掉reset,否在会出现跨域错误。
- 2.新增导出多个单元。
- 3.poi官方建议大数据量解决方案:SXSSFWorkbook。
- 4.自定义下拉列表:对每个单元格自定义下拉列表。
- 5.数据遍历方式换成数组(效率较高)。
- 6.可提供模板下载。
- 7.每个表格的大标题[2018-09-14]
- 8.自定义列宽:对每个单元格自定义列宽[2018-09-18]
- 9.自定义样式:对每个单元格自定义样式[2018-10-22]-[2018-10-25修复]
* 10.自定义单元格合并:对每个单元格合并[2018-10-22]
* 11.固定表头[2018-10-23]
* 12.自定义样式:单元格自定义某一列或者某一行样式[2018-10-30]
* 13.解决 SimpleDateFormat 与 DecimalFormat 线程安全问题[2018-11-07]。 localhost01 博友 2018-11-07
* 14.版本3.0开始支持对象编程(之前都是直接调用函数、现支持先写入对象再调用)。[2018-12-07]
亲自测试:WPS、office 08、10、11、12、16 能正常打开。
开源中国:https://www.oschina.net/p/java-excel-utils(大家多多支持评论收藏)
发布仓库:https://github.com/andyczy/czy-nexus-commons-utils
使用说明:版本 3.2 (https://github.com/andyczy/czy-nexus-commons-utils/blob/master/README-3.2.md)
-
### 导出配置 ExcelUtils.exportForExcel(...)
-
-
* 可提供模板下载
-
* 自定义下拉列表:对每个单元格自定义下拉列表
-
* 自定义列宽:对每个单元格自定义列宽
-
* 自定义样式:对每个单元格自定义样式
-
* 自定义样式:单元格自定义某一列或者某一行样式
-
* 自定义单元格合并:对每个单元格合并
-
* 自定义:每个表格的大标题
-
* 自定义:对每个单元格固定表头
-
-
### 导入配置 ExcelUtils.importForExcelData(...)
-
* 获取多单元数据
-
* 自定义:多单元从第几行开始获取数据
-
* 自定义:多单元根据那些列为空来忽略行数据
-
-
### maven 推荐使用最新版本 v 3.2
-
-
<dependency>
-
<groupId>com.github.andyczy</groupId>
-
<artifactId>java-excel-utils</artifactId>
-
<version>3.2</version>
-
</dependency>
发布仓库:https://github.com/andyczy/czy-nexus-commons-utils
使用说明:版本 3.2 (https://github.com/andyczy/czy-nexus-commons-utils/blob/master/README-3.2.md)
1、何为万能Java操作Excel导出工具类?
大家有没有这样的需求?
- 多表格导出 ?
- 设置各种样式?
- 各式各样的合并、字体颜色、列宽?
- 设置下拉列?
- 固定表头?
- 大标题等?
有时候也遇到这样的需求,每次都去写一大堆代码?不用担心,这个工具类全部帮你解决!全自定义全家桶套餐!
该代码逻辑是经过多个项目和很多次验证,如果有更好的优化,如速度上请评论或者私信。共同写一个更加万能的工具类!
2、实例?
直接列举,具体使用方法代码逻辑写的很清楚。
3、导入?
导入除了加多表格、从第几行开始获取,没啥可讲了。主要是导出的形式太多,所以导入就不解释了,直接用就知道了哈。
导入不转换成对象,直接获取到数据(支持多表格),直接根据列循环获取数据。
如: