[英]how to use JRSwapFileVirtualizer for jasper reports in java
如何在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);
希望它能工作:-)
干杯...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.