got*_*ch4 17 reporting report jasper-reports
前一天,我的老板问我,他想从网络应用程序中获取PDF格式的发票.鉴于每个人都使用JasperReports和iReport进行设计,我试过了.我的Web应用程序基于Java + Hibernate和Spring.起初Jasper看起来很好,而iReport也是如此.无论如何,我被两件事所阻止:
我见过DynamicJasper,但似乎我无法用它来设计报告.你怎么看?是否更容易使用替代品?
如果时间至关重要(通常是老板递给你的东西),我建议你查看iText(主站点在这里).
它非常非常简单(您可以在20分钟内完成,运行并生成简单的"Hello,PDF!"示例)并且可以将任何内容导出为PDF:表格,列表,图表,图像,超文本,等等
我自己承认,JasperReports实施它JRBeanCollectionDataSource是一个更优雅,灵活,永久的解决方案.但是如果你需要一个快速脏的库来生成PDF,并且迫在眉睫的截止日期即将到来,我会下载iText JAR并拥有它.
该站点加载了实用的代码示例,可以完成您想要完成的任何事情.
与JasperReports不同,iText不是报告生成器.它只是一个PDF生成器(从我在你的问题中可以看出,听起来就像你需要的一样).因此,对于任何特定的bean,你只要选择你要导出到PDF发票的属性,使用Chunk,Paragraph等班它们添加到该文件,因为你需要:
// Your POJO/Bean/VO
Employee oEmp = new Employee();
Document oInvoicePdf = new Document();
PdfWriter.getInstance(document, new FileOutputStream("/invoices/2011/Invoice201.pdf"));
document.open();
document.add(new Chunk("Employee's name is : " + oEmp.getName()));
document.close();
Run Code Online (Sandbox Code Playgroud)
即使这不是你想要的,不惜一切代价,我建议你避开 Apache PdfBox.在我的拙见中,这是纯粹的邪恶,只会伤害你的心.
希望这有帮助,祝你好运!
小智 3
作为 iReport 的替代方案,您可以尝试 JasperReports 的 JasperWave 设计器。为了解决第二个问题,为什么不编写一些辅助java代码来将bean结构转换为报告结构呢?无论如何,将 java 对象映射到某种平面结构总是不容易的。创建一些java接口来隐藏底层bean结构的复杂性。不确定第二个问题是寻找替代报告解决方案的原因。
| 归档时间: |
|
| 查看次数: |
22937 次 |
| 最近记录: |