我想用JSP创建一个动态报告网页。基本上它应该包含以下部分:JasperReports html和pdf输出
- 过滤器:用户可以指定过滤条件并按过滤按钮。
- HTML-output:过滤器的结果可以在这里看到。这是一个大的html页面(或者如果一个页面太大,就会有几个页面)。它可能包含到系统其他部分的链接。
- PDF输出:用户应该能够保存PDF版本的报告用于打印或归档目的。
我不想自己实现所有的东西,我想使用java报告库,所以我使用JasperReports创建了我的报告。 pdf输出非常好,但报告的html导出不适合我的目的。
JasperReport的html导出创建了一个包含大量硬连线代码和相当随机配置选项的html文件。例如,它默认创建一个白色背景的表格(<table style="... bgcolor="white" ... ">
),该表格可以使用IS_WHITE_PAGE_BACKGROUND
选项关闭,另一方面,cellpadding="0" cellspacing="0" border="0"
在table
标签中被硬连线。这也是奇怪的(并且使css造型困难),而不是span类,html文件包含所有我的字段的<span style="font-family: sansserif; color: #000000; font-size: 10.0px;">
。
当然,我可以使用JSP实现html输出,但这意味着我必须设计输出两次(一次在jrxml中用于JasperReports,一次在JSP中),并且我必须重新实现报告功能(如小计计算,总计算,分组......),这是违反DRY原则。
实现此目的的最佳实践是什么?使用JasperReports可以创建更好的HTML导出吗?
我今天碰到这个帖子,我使用html,我需要删除这个跨越得到生成。正如你在答案中提到的,我理解使用jQuery。我的问题是在哪里编写这段代码,以及如何将它集成到我的报告中?请指导我 – 2012-12-27 10:35:21