Java Jasper报告大数据的性能问题

Java Jasper报告大数据的性能问题,java,jasper-reports,Java,Jasper Reports,我正在使用Jasper Report 6.11版本生成Excel报告,因为我的列是动态的,所以我们在Jasper文件中使用了交叉表 我有大约132列和100000行,因为数据很大,无法下载报告。 在搜索解决方案时,我找到了JRSwapFileVirtualizer解决方案。我试过了,但还是一样的问题。我检查了一些小数据的交换文件位置,然后将数据写入交换文件,但对于大数据,它将不起作用 代码库: JRBeanCollectionDataSource dataSource = new JRB

我正在使用Jasper Report 6.11版本生成Excel报告,因为我的列是动态的,所以我们在Jasper文件中使用了交叉表

我有大约132列和100000行,因为数据很大,无法下载报告。 在搜索解决方案时,我找到了JRSwapFileVirtualizer解决方案。我试过了,但还是一样的问题。我检查了一些小数据的交换文件位置,然后将数据写入交换文件,但对于大数据,它将不起作用

代码库:

    JRBeanCollectionDataSource dataSource = new JRBeanCollectionDataSource(listForCommonReport, 
     false);
    JRSwapFile swapFile = null;
    JRAbstractLRUVirtualizer virtualizer = null;
    JasperPrint jasperPrint = null;
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    JRXlsxExporter exporter = new JRXlsxExporter();
    try {
        reportParams.put(DB_CONNECTION_BODY, getConnection());

        swapFile = new JRSwapFile(c:\\swapfilefolder, 4096, 200);
        virtualizer = new JRSwapFileVirtualizer(2, swapFile, true);
        reportParams.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);

        jasperPrint = JasperFillManager.fillReport(templateFileFileName, reportParams, dataSource);

        exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
        exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, bos);
        exporter.setParameter(JRXlsAbstractExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE);
        exporter.setParameter(JRXlsAbstractExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE);
        exporter.setParameter(JRXlsAbstractExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
        exporter.setParameter(JRXlsAbstractExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
        exporter.exportReport();
        return bos.toByteArray();
请给我推荐一些适合我的解决方案