Экспорт результатов запроса JasperReports

в моем Java-проекте у меня есть много отчетов JasperReports со сложными запросами SQL, содержащими много параметров. Отчеты используются для создания PDF-документов, содержащих данные, возвращаемые запросом, сгруппированные и отформатированные различными способами.

Теперь у меня также есть необходимость напрямую экспортировать результат запроса (например, ResultSet, или Map, или CSV-файл, или аналогичный ...). Можно ли попросить JasperReports выполнить только запрос и вернуть результаты вместо рендеринга страницы PDF?

(ПРИМЕЧАНИЕ: это не то же самое, что выбор формата вывода csv для рендеринга отчета, потому что этот метод пытается преобразовать дизайн отчета в файл csv ... Вместо этого я хотел бы только «повторно использовать» запрос внутри отчета , также используя преимущества управления параметрами JR и т. д.)

Это мой Java-код для создания PDF-документа из отчета:

JasperReport report = (JasperReport) JRLoader.loadObject(inStream);
JasperPrint jasperprint = JasperFillManager.fillReport(report, params, conn);
JRAbstractExporter exporter = new JRPdfExporter();
exporter.exportReport();
ByteArrayOutputStream os = (ByteArrayOutputStream) exporter.getParameter(JRExporterParameter.OUTPUT_STREAM);
byte[] formattedReportBytes = os.toByteArray();
return formattedReportBytes;

Я видел, что есть класс под названиемJRJdbcQueryExecuter внутри JasperReports ... Можно ли вызвать его напрямую вместо вызоваfillReport, чтобы получить ResultSet выполненного SQL-запроса?

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос