使用Spring MVC返回PDF文件

实际上,我具有该功能,我有一个框架,在其中设置了URL(ip:port/birt/preview?__report=report.rptdesign&__format=pdf&parameters...),然后该框架呈现了PDF文件。

但我希望该URL隐藏…

我需要使用Spring MVC返回PDF文件,但是该PDF是由另一个应用程序生成的。

这意味着我得到了另一个应用程序(Eclipse Birt

Engine),该应用程序通过URL(ip:port/birt/preview?__report=report.rptdesign&__format=pdf&parameters...)传递参数,并且生成了PDF文件,我需要从控制器中获取该PDF并通过Spring

MVC返回。有人可以帮忙吗?

回答:

就像下面这样:

@Controller

@RequestMapping("/generateReport.do")

public class ReportController

@RequestMapping(method = RequestMethod.POST)

public void generateReport(HttpServletResponse response) throws Exception {

byte[] data = //read PDF as byte stream

streamReport(response, data, "my_report.pdf"));

}

protected void streamReport(HttpServletResponse response, byte[] data, String name)

throws IOException {

response.setContentType("application/pdf");

response.setHeader("Content-disposition", "attachment; filename=" + name);

response.setContentLength(data.length);

response.getOutputStream().write(data);

response.getOutputStream().flush();

}

}

以上是 使用Spring MVC返回PDF文件 的全部内容, 来源链接: utcz.com/qa/413176.html

回到顶部