2010-01-17 24 views
2

我正在开发一个Web应用程序。我们正在使用jasperreports。在每次通话中编译jasper报告是一项开销,需要相当长的时间(4-7秒)。我们考虑使用Spring预编译jrxmls,但如果jrxml被更改/修改,仍然可以重新生成。 以前有人做过这个吗?如果是,如何。 感谢在更改时自动编译JasperReports

回答

1
  • 你可以安排一个计时器,重新编译新的碧玉报告每隔X小时(check here
  • 您可以加载JRXML为File并检查其lastModified(),其存储在一个数据库(或HashMap ),以及在以后每次需要对JRXML到lastModified()比较在数据库/ HashMap值并重新编译它只有如果它们不同
  • 两种方法结合上述
  • 创建一个简单的接口(一个密码保护页面),该页面列出了所有jrxml文件的“编译”按钮,这样,无论何时您更改某些内容,您都会转到该页面并指出应重新编译哪些jrxmls。
+0

管理页面的+1。这可以用于很多事情。 – medopal

0

我不知道你的应用程序,但你可以看看使用JasperServer。该Web应用程序具有一个存储库和用于管理JRXML内容和编译的过程。您可以通过网络服务访问应用程序。