2015-12-08 3 views
2

В существующей системе уже используется jasper 5.0, и, как я ее знаю, используйте poi HSSF для генерации данных xls, но теперь, когда приложение растет, в отчете возникает проблема с большой транзакцией счетчика для генерации.Как установить Jasper для использования XSSF?

Я искал решение и нашел POI с XSSF. Поскольку яшма использует POI HSSF тоже, я думаю об использовании XSSF внутри JASPER.

Возможно ли это? и как я мог это сделать? Мне нужно использовать jasper, потому что теперь невозможно изменить существующее приложение.

ответ

3

Для экспорта jrxml генерации OOXMLXSSF, первенствует файл xlxs

Используйте net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter

Пример:

JasperPrint jasperPrint = JasperFillManager.fillReport(report, paramMap, connection); //Example of how to get the jasper print 

JRXlsxExporter exporter = new JRXlsxExporter(); 
exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); 
File outputFile = new File("excelTest.xlsx"); 
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(outputFile)); 
SimpleXlsxReportConfiguration configuration = new SimpleXlsxReportConfiguration(); 
configuration.setOnePagePerSheet(false); //Set configuration as you like it!! 
configuration.setDetectCellType(true); 
configuration.setCollapseRowSpan(false); 
exporter.setConfiguration(configuration); 
exporter.exportReport(); 

Естественно вам нужен связанные библиотеки (ПВР-ooxml.jar, poi-ooxml-schemas.jar, xmlbeans.jar) в вашем пути к классам, они присутствуют в распределении отчета яшмы.

JRXlsxExporter доступен с версии 4.5, это jasper report 5.5.0 API. В параметрах версии 4, где установлены вместо свойств, см. jasperreports-export-to-xlsx-not-xls

+0

Это то, что я ищу, спасибо за ваш авер. – Angripa

 Смежные вопросы

  • Нет связанных вопросов^_^