在一个位置有一个访问数据库文件,以便它可以在开发和分发时使用

Having an access database file in one location so that it can be used in development and when distributed

虽然我做了很多研究,但我仍在努力寻找放置我的访问数据库文件的正确位置,以便它可以与我的 java 项目和我的最终 jar 文件一起使用(无需更改每个案例的代码)。

我可以将它放在工作目录中,并在使用 NetBeans 时使用代码来获取它。

DriverManager.getConnection("jdbc:ucanaccess://" + "res/mydatabase.accdb");

但是,当我 运行 jar 文件时,这不起作用(我猜这是因为该文件夹位置不再是工作目录)。

到目前为止我考虑过两种方法:

我的第一个问题是: 我可以在哪里存储文件,以便当我从 NetBeans 运行 和 运行 时可以找到它它来自 jar 文件?

我的第二个问题是: 是否必须使用特定的代码行才能从该位置访问它?

如果您正在寻找一个 "one true" 文字路径(相对或绝对),它不仅适用于开发,而且适用于部署到所有可能的目标平台,那么您可能希望太多了。您可能需要满足于编写将派生(或提示)路径的代码,可能基于 user.home 系统 属性.