首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > 高性能WEB开发 >

java excel poi 大数据量50W,该如何解决

2013-08-01 
java excel poi 大数据量50W最近在做Excel导出,但是数据太大,导致总是内存溢出。我想分成多次写,但是依然是

java excel poi 大数据量50W
最近在做Excel导出,但是数据太大,导致总是内存溢出。我想分成多次写,但是依然是内存溢出,求大神们帮忙。谢谢了。 Java 大数据 Excel poi 内存溢出
[解决办法]
分批次导出,然后每次使用的bean重用保证溢出不了!
[解决办法]
我也遇到类似问题了,读取的时候数据量太大,内存溢出,LZ解决了没有,怎么解决的?
[解决办法]
我也碰到这个问题了。我8个字段的数据,8万条就内存溢出了。我jvm调整到700M都不行
[解决办法]
用POI是有介个问题的,试试Jxl呢?好多年没用java了,当年不用POI就是因为它爱内存溢出。
[解决办法]
但是如果你一次将数据全部导出,不做任何处理,相信jxl可能也承受不了的。
[解决办法]
使用xml去解析excel文件 ,然后  使用poi的   缓存写出类  写出 excel文件  这样处理数据飞速  
[解决办法]
晕,为什么要一次性导出呢?分批次地存入数据库中。比如每读取1000条数据批量插入到数据库中,这样就会避免内存溢出的问题。
[解决办法]
没1000条插入一次数据库或者另存为其他文件,然后清理一次内存。肯定不会出现LZ说的问题了。
[解决办法]
excel的一个sheet最大值好像是65531行,你试试如果超过一个数量就重新创建sheet,或者重新创建一个excel
[解决办法]
可以换种方式,比如当用户点击下载后,后台跑一个线程,分批读取数据,生成完后提供一个下载的连接。
[解决办法]
哎,何必自己找苦吃,这么大的,胖子也要撑死,何况是程序,分批才是正解
[解决办法]
如果楼主你的程序报错OutOfMemoryError的话,可以用poi的SXSSFWorkbook对象.
[解决办法]


用poi这个对象SXSSFWorkbook,我以前做过百万级的,给你个思路,分页查询,不要一次全部查出来,按页去写,然后在文件生成文件,用户下载文件就可以,这个是我以前处理的思路

代码有几个文件 没办法贴了,需要代码的话 发私信
[解决办法]
为什么不分批导出,比如1万条生成一个文件,无论管理还是阅读都方便
[解决办法]
我刚做了一个,8万数据是分三次导出。
------解决方案--------------------



[解决办法]
用JXL分sheet导出
[解决办法]
用POI3.8以上的版本即可
[解决办法]
引用:
excel的一个sheet最大值好像是65531行,你试试如果超过一个数量就重新创建sheet,或者重新创建一个excel


office2007貌似没这个限制了
[解决办法]
参考文章:大数据量导出Excel的方案 java 大excel文件

热点排行