设计问题。
我今年早些时候开发了一个在线测试引擎网络应用程序。我已经使用了Java servlet和Freemarker模板,完全遵循MVC范例。
应用程序中一个很大的缺失功能是它不提供报告。应用程序的初始设计并未将报告视为核心的一部分,因为存在各种约束,不一定是技术性的。现在需要的报告服务应该使用户能够随时在线获取报告,并以预定义的格式下载报告。
该应用程序已经发展到一个阶段,我不想在其中添加更多代码,并希望隔离核心模块并围绕此核心开发未来需求。
我想听听一些有关如何围绕核心应用开发此报告服务的想法。
我还可以使用哪些报告工具?我过去曾使用过Jasper,但听说过BIRT也很好。提出你的建议。
答案 0 :(得分:3)
如果您有相当高级的要求,例如:
,那么Jasper是一个非常好的选择但如果您真的只需要以流行的格式(如HTML / PDF / XLS)显示表格报告,那么只需diplaytag就可以获得很长的路径,而且比Jasper要求的工作量要少得多。
一个简单的表格报告使用displaytag大约需要20行JSP代码,但同一报告需要使用Jasper大约500行XML。我会调查displaytag是否能够满足您的要求,然后再投入BIRT / Jasper这样的重量级报告解决方案。
答案 1 :(得分:1)
我会推荐Jasper,因为我过去曾经使用它,并且发现它很容易配置和使用。可以将它集成到您的应用程序中而不会有太多麻烦。
我只听过关于BIRT的好话,但从未自己实现过。
答案 2 :(得分:0)
我会推荐艺术:http://art.sourceforge.net/。我们正在使用这个工具没有任何问题。它仍然是活动项目,因此如果您添加新功能,则可以为其添加请求。