java导出数据量大的文件

jianweizd 发布于 2012/07/20 09:30
阅读 1K+
收藏 1
一次性导出20W条数据,POI、JXL都报内存溢出,有什么更好的办法吗?
加载中
1
逝水fox
逝水fox

不要用POI这些,只是导出数据结构简单的话换成文本输出csv用流式输出,Excel一样可以打开的。

POI什么的都是先在内存里面把Excel的结构构造好再输出的,这个过程很费内存。

loki_lan
loki_lan
+1
0
Andre.Z
Andre.Z

程序问题吧,估计你用了啥样式,然后,还没公用,猜的。

excel一个表的行数最大貌似是65535 ,可以考虑文件里多搞几个表。

0
p
pettertao
楼上正解
0
JustForFly
JustForFly

1. 待处理的数据,不要一次性全部放到数据对象中,应该分批处理,以避免JVM内存使用的溢出;

2. Excel如果写入的内容过多,建议分开写到多个excel文件中,然后打成ZIP包提供下载。

0
边缘行者
边缘行者

不要用POI这些,只是导出数据结构简单的话换成文本输出csv用流式输出,Excel一样可以打开的。 不错~~~ 赞一个 我都没想到  民间自有高手阿  @逝水fox

0
allen_limi
allen_limi
我们项目遇到大数据,一直都是用流导出csv格式
返回顶部
顶部