gpt4 book ai didi

java - 将 jasper 报告下载到服务器中的特定位置

转载 作者:行者123 更新时间:2023-11-30 03:23:02 26 4
gpt4 key购买 nike

我的应用程序正在tomcat服务器中运行,并且我已经开发了一种使用jasper下载pdf文件的方法。我需要做的是将某个 pdf 下载到服务器内的某个位置。我尝试过,但不知道该怎么做。

            jasperReport = JasperCompileManager.compileReport(absolutePathToIndexJSP);
JasperPrint gh = JasperFillManager.fillReport(jasperReport,parameters, JRdataSource);
ByteArrayOutputStream baos = new ByteArrayOutputStream();

Exporter exporter = new Exporter();
String downloadFileName = "";


downloadFileName = "Fund-Transfer-Report-" + reportGenerateDate + ".pdf";
response.setHeader("Content-Disposition", "attachment; filename=" + downloadFileName);
response.setContentType("application/pdf");
exporter.exportPdf(response, gh, baos);

这将转到导出器方法,如下所示,

public void exportPdf(HttpServletResponse response, JasperPrint jp, ByteArrayOutputStream baos) throws JRException, IOException {

//OutputStream ouputStream = new FileOutputStream(new File("C:/JasperReports/Account_Report.pdf"));
//Get response output stream to download report file
OutputStream ouputStream = response.getOutputStream();

// Create a JRPdfExporter instance
JRPdfExporter pdfExporter = new JRPdfExporter();

// Here we assign the parameters jp and baos to the exporter
pdfExporter.setParameter(JRExporterParameter.JASPER_PRINT, jp);
pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos);

pdfExporter.exportReport();

ouputStream.write(baos.toByteArray());
ouputStream.flush();
ouputStream.close();
}

这通常是将 pdf 下载到下载文件夹。我需要能够将其下载到服务器中的某个位置。请指教。

最佳答案

您可以使用JasperExportManager将生成的pdf保存到服务器中的特定位置

JasperExportManager.exportReportToPdfFile(jasperPrint, exportPath);

例如:

String exportDir = System.getProperty("jboss.server.config.dir") +"/jasperreport/export";
String exportPath = exportDir + "/reportName.pdf";
JasperReport jasperReport = CompileManager.compileReport(jrxmlFilePath, mainReportName);
JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport, parameters, jsonDataSource);
JasperExportManager.exportReportToPdfFile(jasperPrint, exportPath);

关于java - 将 jasper 报告下载到服务器中的特定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30886946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com