我有一个读取 PDF 的应用程序,将内容转换为 TIF 文件的集合,然后将它们发送到 Glass Fish Server 进行保存。
通常有 1-5 页,效果很好,但是当我得到一个超过 100 页的输入文件时......它会在传输时引发错误。
Java heap space
at java.util.Arrays.copyOf(Arrays.java:2786)
at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
在我的情况下,投入更多资源不是一个好的选择,所以我正在寻找一种以某种方式优化它的方法。我将数据存储在:
HashMap<TifProfile, List<byte[]>
有没有更好的方法来存储或发送它们?
编辑
我做了一些测试,最终的 80 页 PDF 集合的
大小超过 280mb(240 个 tiff,内部设置不同)