java 大量数据导出为Excel
内存溢出从数据库中按查询条件一次性获取大量数据,要把这些数据导出为Excel,当前超过8000左右就出现内存溢出,请问如何做到一次性导出5万条左右的数据。
java
excel
大量,海量数据导出
内存溢出
------解决方案--------------------
简而言之就是拼接符合Excel格式的XML字符串写到一个你想写到的地方,直接response中写到用户浏览器也可以啊。
你随便找个简单的Excel另存为XML,就能理解我说的了。
POI或者JXL的话把服务器内存占满,导死服务器是肯定会发生的,跟数据条数还有字段个数都有关系。如果不对导出请求做并发限制,那结果会更严重。
如果要跟踪内存占用情况的话用jprofile监控下内存,做下代码级优化,但是效果不会改善多少的。