2 xxxxvsdsf xxxxvsdsf 于 2016.03.14 10:58 提问

大神进来帮看看,java导出excel的问题……

现在是想进行数据库查询然后导出到excel里面,但是当数据量大的时候就会报内存溢出,导出倒是没问题,就是在查询数据库获取list的时候就报内存溢出了,该如何处理,最好能给出示例,十分感谢

2个回答

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.14 11:11

那你查询是可以分页分批查询出来,然后写入excel中,而且文件数量达到一定数量后再分多个sheet,再进一步可以分多个excel文件 。总之,为了防止内存溢出,要么调整JVM内存参数,要么减少一次加载到内存的数据。

xxxxvsdsf
xxxxvsdsf 回复毕小宝: 好吧,大概明白了
接近 2 年之前 回复
wojiushiwo945you
wojiushiwo945you 回复xxxxvsdsf: 就是分配while循环执行你原来的整个代码啊?只不过你原来是整个一个List,现在用循环查询N个list 数据执行你的插入操作啊。
接近 2 年之前 回复
xxxxvsdsf
xxxxvsdsf 回复毕小宝: 分页查询是可以,但是我不知道该怎么把分批查询出来的数据导出到同一个excel里面去![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/36.gif)
接近 2 年之前 回复
Royal_lr
Royal_lr   Ds   Rxr 2016.03.14 11:37

你的数据量是有多大,,,

xxxxvsdsf
xxxxvsdsf 回复Royal_lr: 查询5,6W就报内存溢出了,然而我一天就有60到70万
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!