带有spring MVC的JasperReport:在客户端打印报告而不显示它

时间:2015-03-10 10:24:10

标签: java angularjs spring-mvc printing jasper-reports

我正在开发一个Spring MVC - Angularjs应用程序 我需要打印报告,我选择了JasperReport来做到这一点。

在我继续之前,我想知道我是否可以生成报告,然后直接在客户端计算机上设置的默认打印机上打印(打印机可以根据用户更改)不显示它在屏幕上。
我一直在寻找这个特定需求的答案,但找不到任何答案。

如果有人知道它......

生成报告并打印它的来源:

HashMap<String, Object> params = new HashMap<String, Object>(); 
params.put("Title", "My Report");

InputStream reportStream = this.getClass().getResourceAsStream(TEMPLATE); 
JasperDesign jd = JRXmlLoader.load(reportStream);
JasperReport jr = JasperCompileManager.compileReport(jd);
JasperPrint jp = JasperFillManager.fillReport(jr, params, datasource.getDataSource());

JasperPrintManager.printReport(jp, false);

1 个答案:

答案 0 :(得分:3)

您可以在HTML页面中创建一个包含PDF和&amp;然后使用print()方法打印或使用java.awt.print.PrinterJob。见下面的例子。

希望这有助于你