java - 如何在 java 中使用 JRSwapFileVirtualizer 进行碧 Jade 报告

标签 java jasper-reports

如何在 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/

相关文章:

java - 对矩阵中的元素求和

java - 使用 Java 连接 AWS aerospike 实例

java - 如何在将现有模板加载到 JasperDesign 中然后更改它时更改页面大小/格式?

java - 线程 "AWT-EventQueue-0"java.lang.NoClassDefFoundError : org/apache/commons/lang3/Validate 中出现异常

java - glsl 片段着色器矩形不会显示

java - 从多个 JAR 动态加载类

java - 使用 java.lang.Class 作为方法参数的问题

pdf - Jasperreports 标记属性和 PDF

rest - 使用REST API生成JasperServer报告时传递内容

java - Jasper Reports 生成空白 pdf