excel学习库

excel表格_excel函数公式大全_execl从入门到精通

POI导致内存溢出的一个不能忽视的问题

最近,由于项目需要,用到poi来操作Excel完成数据的导入。 一开始,以为是JVM内存不足,故意将内存调整到4G,足够大了,然后在运行时仍然曝出内存溢出。 然后又想到会不是循环行时创建的对象太多,又将对象的定义移到循环的外面,问题仍然没有解决。 接下来,又给FileInputStream的读取增加BufferedInputStream缓冲区读取,问题依然存在。 百无聊赖,仍然找不到问题的突破口。这时候,随便点了一下Excel表格的内容,发现了问题的所在,Excel中使用了公式,这里一定要注意: 使用POI读取Excel时,Excel里面一定不要使用公式,这样一方面会造成程序崩溃,一方面造成内存溢出,也就是会发生上面我们提到的后果(java.lang.OutOfMemoryError)java heap space.好了,很简单的一个问题,折磨了一下午,头疼。 最后,再次重申:当遇到采用POI读取Excel发生内存溢出时,一定要先检查Excel中各列是否有采用公式,如果有公式,一定要去掉改用手写。 如果你感觉本文对你有用,请分享给更多有需要的人。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接