【发布时间】:2019-03-05 07:55:50
【问题描述】:
我正在尝试将 Netbeans 的 iReport 插件与我的 HSQLDB 数据库连接起来,这样我就可以根据它的数据构建我的报告。我的 JavaFX 应用程序是基于 Spring-Boot 的,并且非常愉快地使用以下连接字符串:
jdbc:hsqldb:db/TFH
我使用环境变量设置为我的工作目录的路径,例如 Spring application.properties 文件,如下所示:
@PropertySource("file:${TFH_HOME}/config.properties")
我的问题是 iReport 不能使用相同的连接字符串,因为它实际上是在 Netbeans 安装目录中查找 db 文件夹。我的想法是将环境变量直接放在 JDBC 连接字符串中,但我似乎无法使其正常工作。我四处寻找正确的语法,但似乎没有任何效果。我试过这个:
jdbc:hsqldb:${TFH_HOME}/db/TFH
这使得 iReport 在这个不存在的文件夹中搜索数据库文件:
C:\Program Files\NetBeans 8.2\${TFH_HOME}\db\
如何使 JDBC URL 包含环境变量并使其在相对路径中搜索 DB?
谢谢!
【问题讨论】:
-
这取决于您检索 JDBC url 的方式或位置。
@PropertySource中的插值是 Spring 特有的功能。您需要提供更多背景信息。 -
就像我说的,我正在尝试使 iReport 中的 URL 指向正确的路径。默认情况下,它在 Netbeans 的安装目录中查找,这是 Netbeans 类路径,但我需要它来查看我的项目目录,因此尝试将我已经用于类似目的的环境变量插入 JDBC URL。
-
仅供参考,我刚刚尝试使用完整路径,它可以工作。我只需要知道如何在其中放置一个环境变量(其中包含路径)。
-
如何您目前正在获取该 URL。我重复我之前的评论:@PropertySource 中的插值是 Spring 特有的功能。所以如果你只是构造一个普通的字符串,它是行不通的。
-
抱歉,我不确定我是否理解您的问题。我自己将 URL 输入到 Netbeans 中的 iReport 插件中,以便构建报告。它与应用程序使用的数据库相同,我稍后将以编程方式提供数据源,但现在 iReport 需要自己的数据源来构建报告。
标签: jdbc netbeans environment-variables hsqldb ireport