我在Eclipse中有一个java项目,结构如下:
MyProjectFolder
|
├─ src
├─ data
├─ lib
在这个项目中,我在独立模式下使用HSQLDB。数据库文件存储在数据文件夹中,我在建立连接时使用此URL访问它们:
"jdbc:hsqldb:file:./data/" + dbname
在Eclipse中执行项目时,一切正常。现在我正在尝试将项目导出到可运行的jar中,并且无法连接到数据库。我已经尝试将数据文件夹添加到Eclipse中的源列表中,并且还手动将文件夹添加到jar中,甚至将数据文件夹放在项目文件夹之外并相应地更改URL,但没有任何工作¿可以使用jar来实现吗?或者我应该使用其他方法部署应用程序?
答案 0 :(得分:0)
如果要连接到jar文件中的数据库,则必须使用jdbc:hsqldb:res:
而不是jdbc:hsqldb:file:
。但是如果你想写入数据库并且这在jar文件中是不可能的,我可能会在jar中放置一个默认数据库,如果在jar之外的定义位置没有找到数据库,程序将复制默认数据库到定义的地方,然后连接到数据库。
是否正确,您无法连接到jar文件之外的数据库?如果是这样,请解释您的目录结构和数据库的整个URL。