繁体   English   中英

从Java更改Birt报告数据源

[英]change Birt report datasource from java

我们已经在eclips报表设计中创建了Birt报表,并且使用Birt jdbc数据源连接到derby数据库。 现在,我们将使用与mysql数据库相同的报告。 每次我们需要在每个报告中编辑此数据源时。 我们希望在java / maven中具有一个属性,可以在其中更改Driver ClassDatabase URL

我们已经按照此链接上的说明进行操作。 如何以编程方式设置BIRT报告的数据源?

但是在这里,他将在运行时使用动态数据库URL。 但是不要在运行时这样做,它必须永久更改,直到我们通过Maven再次更改它为止。

我们找到了解决方案。 在birt报告中,我们使用jdbc数据源(属性绑定):

if ( params["database"] == "derby" ){
     "jdbc:derby://localhost:1527/databaseName;user=user;password=password";
}else if ( params["database"] == "mysql" ) {
     "jdbc:mysql://localhost:3306/databaseName?user=root";
}

因此我们创建了一个参数,可以在运行时选择derby或mysql。

我们还使用报告Web查看器,因此我们在网页中显示此报告:

<birt:viewer id="WebApp" reportDesign="report.rptdesign" format="html" ></birt:viewer>

现在我们像这样在此查看器中粘贴参数:

<birt:viewer id="WebApp" reportDesign="report.rptdesign" format="html" >
      <birt:param name="database" value='mysql'></birt:param>
</birt:viewer>

参数值将通过使用Maven配置文件自动更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM