-
POI读取/生成Excel大文件,有高人吗?
- 网站名称:POI读取/生成Excel大文件,有高人吗?
- 网站分类:技术文章
- 收录时间:2025-09-02 16:15
- 网站地址:
“POI读取/生成Excel大文件,有高人吗?” 网站介绍
最近在搞一个通用文件处理服务器,需要处理excel文件,但是有的excel文件大小超过3M,读取文件时直接导致jvm异常:gc overhead limit exceeded。
原来poi读取excel时有两种模式,我们常用的是第一种,通俗点就是空间换时间/时间换空间:
- 1种直接将整个excel读入内存后再解析userModel
- 1种边读取边解析,比较省内存event-userModel
首先加大jvm内存参数
针对excel大文件读取,采用第二种模式来处理可以有效避免常见内存异常,但是得加上文件大小限制,如果文件特别大,那也会照样内存异常。
常用的工具包有阿里开源的easyExcel,easyPOI等,一两行代码搞定。但是第二种模式有个缺点是:无法读取用户当前打开的sheet(比如一个excel中有一个隐藏sheet,一个可见sheet,第一种模式可以使用getActiveSheetIndex()),只能一个一个读取sheet。
针对excel大量数据写入,借助SXSSFWorkbook,再加上数据分页处理,再加上数据记录条数限制,可以避免内存异常。
不知有没有高人有更好的解决方案?
更多相关网站
- 60个基础老挝语短语和句子_老挝语900句对照发音
- Hutool Java工具类库导出Excel,超级简单
- SpringBoot + EasyExcel 轻松实现百万级数据导入导出,用起来还优雅
- java轻松玩转Excel之EasyExcel_java做excel
- 程序员:超级简单导出Excel 工具,Hutool Java工具类库
- 一文说透:7 种 Java 设计模式实战,少走 3 年弯路
- 好难~记录一次生产上的OOM解决过程
- MyBatis-Plus 不支持联表?一个依赖轻松搞定,非常牛逼!
- 10W 行级别数据的 Excel 导入优化记录
- easypoi导出Excel根据内容如何自动换行和自动调整行高
- 最近发表
- 标签列表
-
- mydisktest_v298 (35)
- sql 日期比较 (33)
- document.appendchild (35)
- 头像打包下载 (35)
- 梦幻诛仙表情包 (36)
- java面试宝典2019pdf (26)
- disk++ (30)
- 加密与解密第四版pdf (29)
- iteye (26)
- centos7.4下载 (32)
- intouch2014r2sp1永久授权 (33)
- jdk1.8.0_191下载 (27)
- axure9注册码 (30)
- 兔兔工程量计算软件下载 (27)
- ccproxy破解版 (31)
- aida64模板 (28)
- engine=innodb (33)
- shiro jwt (28)
- segoe ui是什么字体 (27)
- head first java电子版 (32)
- clickhouse中文文档 (28)
- jdk-8u181-linux-x64.tar.gz (32)
- 计算机网络自顶向下pdf (34)
- -dfile.encoding=utf-8 (33)
- jdk1.9下载 (32)
