一、在java应用程序中打印报告
最近,我在开发一些基于apache poi库的应用程序,其中大量地使用到xls文件的报告输出。我很快意识到:这些报告模块能够绑定大量极有价值的开发资源以便于将来之用。当客户端要求输出pdf格式时,最初的对于itext api的研究使我偶然发现了jasperreports。最后,我确信,jasperreports一定会极大地影响到我们小组开发报告的方法。 【相关文章:IE7浏览器的5个新功能】
如今,在应用程序开发过程中报告模块经常变得越来越庞大与复杂。当客户们意识到报告提供给他们的优点时,他们往往要求报告模块提供给他们更多的信息。报告模块的开发就是在这样一种“事后回想”的环境下成为应用程序的一个重要的组成部分。另一方面,报告模块往往是在应用程序开发的后期附加上去的而不是在初始开发阶段就被纳入考虑并被实现。 【扩展阅读:IE7的权限的3个小小变化】
引入jasperreports的一个重要优点是,可以通过单个报告模板生产出若干种格式的报告。这意味着,针对于xls格式输出创建的模板还能够用来生成pdf文件,甚至是csv,html或xml文件。 【扩展信息:微软将在Vista中使用IPv6增强连通】
在实现jasperreports之前,创建每一种报告都要求基于apache poi库开发一个定制报告类。这种方法要耗费大量宝贵的开发时间来创建报告的许多方面,例如单元格特定的格式化,风格及填充方法等。而如今,jasperreports能够帮助我们的开发小组夺回宝贵的开发时间,却仍然能够实现与原先同样的报告,因为这个工具嵌入式地使用了apache poi库。
二、jasperreports如何帮助开发者?
jasperreports使开发者能够快速而容易地创建出以多种格式输出的报告。开发者还能够在设计或运行时刻使用jasperreports引擎编译报告模板,从而允许生成动态的报告格式。而且,开发者还能够把来自于许多种数据源的数据导入到这些报告中。如今,开发者再也不必依赖于apache poi来创建定制报告类或者使用itext库来格式化报告与确定报告风格,从而使他们专注于报告的数据检索。最终,通过在应用程序开发中使用jasperreports,开发者实现了极有价值的灵活性并节约了开发时间。
jasperreports所使用的xml报告模板提供了布局与描述信息,这些信息用于格式化结果报告以及域、变量与参数等参考内容。借助于某种第三方gui(例如ireport)再加上极少的开发者协助,即使是非开发人员也能够创建这些模板。这样以来,开发者就不必自己去实现报告布局及描述内容。
总之,jasperreports能够使开发者专注于开发他们的报告模块部分,从而使之不必再编写定制的报告生成代码。在整个报告模块中,开发者的角色被缩减到模板编译、数据源实现与报告创建等几个方面。
三、创建与编译xml报告模板
jasperreports要求使用一种定义布局、描述及数据域的报告设计。... 下一页