如何在我的webapp中设置相对路径

时间:2014-01-17 11:15:08

标签: web-applications jetty hsqldb relative-path

我使用Jetty启动一些连接到HSQLDB服务器上基于文件的数据库的webapp。这些数据库文件位于project/hsqldb-1.8.0.10/hsqldb/目录中,我的webapps位于project/jetty/webapps/

要连接到数据库,我需要设置url的属性org.apache.commons.dbcp.BasicDataSource。我需要使用相对路径,因为所有这一切的目标是在每台计算机上部署我的webapps,因此目录将位于不同的位置,但始终位于project/

这是我的第一次尝试:

<property name="url" value="jdbc:hsqldb:file:../../hsqldb-1.8.0.10/hsqldb/myDatabase"/>

我将../../用作jetty/webapps/放在project目录中。但它不起作用,识别失败,因为webapp没有找到用户。显然,这是因为它没有连接到正确的数据库。

如何正确设置相对路径?

1 个答案:

答案 0 :(得分:0)

找不到数据库文件,因为起始目录不是jetty/webapps/,它是Jetty启动的目录。

在我的情况下,我做了:

cd jetty
java -jar start.jar

所以,正确的相对路径是:

jdbc:hsqldb:file:../hsqldb-1.8.0.10/hsqldb/myDatabase

解决了这个问题。