简体   繁体   English

如何使用JasperReports API将生成的pdf保存到服务器

[英]How to save generated pdf with JasperReports API into server

I need to save my generated PDF file into my server. 我需要将生成的PDF文件保存到服务器中。 I am using JasperReports API . 我正在使用JasperReports API

Code sample for PDF generation: 用于PDF生成的代码示例:

//Result set(rs)
//Report path (rptPath)
//Hash map (hmp)
//ServletOutputStream (sos)
//HttpServletResponse (resp)

JRResultSetDataSource jrrs = new JRResultSetDataSource(rs);
bytes = JasperRunManager.runReportToPdf(rptPath, hmp, jrrs);
sos = resp.getOutputStream();
resp.setContentType("application/pdf");

resp.setHeader("Content-Disposition", "attachment;filename="MyFile.pdf");

sos.write(bytes);

sos.flush();
sos.close();

It directly generates the file and ask for download. 它直接生成文件并要求下载。 Where I want to store the generated file into server. 我要将生成的文件存储到服务器的位置。

You need to write bytes to the local file on server instead of writing it back to HttpResponse for that. 您需要将字节写入服务器上的本地文件,而不是为此将其写回到HttpResponse。 Your code can look like : 您的代码如下所示:

FileOutputStream fileOuputStream = new FileOutputStream("C:\\report.pdf");
fileOuputStream.write(bytes);
fileOuputStream.close();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM