【发布时间】:2018-01-10 20:52:08
【问题描述】:
我有一个 spring boot 应用程序,它读取用户上传的 excel 工作表数据并为 excel 数据生成 json。当 excel 很大时约 3-8 MB(其中也有图表)我收到以下错误。
018-01-09T19:42:34.21+0530 [App/0] OUT 2018-01-09 14:12:34.212 ERROR 29 --- [io-63936-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Direct buffer memory] with root cause
2018-01-09T19:42:34.21+0530 [App/0] OUT java.lang.OutOfMemoryError: Direct buffer memory
2018-01-09T19:42:34.21+0530 [App/0] OUT at java.nio.Bits.reserveMemory(Bits.java:694) ~[na:1.8.0_152]
2018-01-09T19:42:34.21+0530 [App/0] OUT at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:123) ~[na:1.8.0_152]
2018-01-09T19:42:34.21+0530 [App/0] OUT at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:311) ~[na:1.8.0_152]
2018-01-09T19:42:34.21+0530 [App/0] OUT at sun.nio.ch.IOUtil.read(IOUtil.java:195) ~[na:1.8.0_152]
由于文件变得太大,因为它有图表数据,我想将文件复制到另一个没有图表数据的 excel 文件,然后处理它。谁能帮助我如何使用 apache宝。所以我的基本要求是将所有 excel 表数据逐个单元格复制到另一个 excel 文件中。
【问题讨论】:
标签: java apache apache-poi