如何在 java 中将 JRSwapFileVirtualizer 用于 jasper 报告,这是我使用的代码..
JRSwapFileVirtualizer virtualizer = null;
virtualizer = new JRSwapFileVirtualizer(10000, new JRSwapFile("F://", 1000, 1000), false);
param.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);
xmlDataSource = new JRXmlDataSource(reportFile,"/table/tr");
jasperPrint = JasperFillManager.fillReport(jasperpath, param, xmlDataSource);
我仍然收到堆空间错误(OutOfMemeoryException),并且创建的文件是空的。
最佳答案
JRSwapFileVirtualizer 的构造函数的第一个参数是在将报告的部分存储在虚拟内存(磁盘)中之前将存储在主内存(RAM)中的最大报告页数。因此,如果您的报告页面大小不超过 10000 页,那么您将无法将它们存储在虚拟内存中,即使您编写了虚拟程序代码,您实际上也没有使用这种美感。
尝试类似的东西,
JRSwapFileVirtualizer virtualizer = null;
virtualizer = new JRSwapFileVirtualizer(3, new JRSwapFile("F://", 2048, 1024), false);
param.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);
希望它有用:-)
干杯...
关于java - 如何在 java 中使用 JRSwapFileVirtualizer 进行碧 Jade 报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1588664/