-1

我有一个连接到 derby 数据库的 java 桌面应用程序,derby 数据库有一些用于试验目的的虚拟数据。该应用程序与数据库一起打包(作为嵌入式 derby 数据库)。当应用程序安装在我的 Windows 7 操作系统的桌面上时,我可以按预期访问虚拟数据。但是,当应用程序安装在程序文件夹中时,我无法访问数据库以及数据库中的数据。

对此有什么解释吗?

4

1 回答 1

2

“Program Files”文件夹对于标准用户是不可写的(并且有充分的理由)。不要在那里存储任何用户数据。

您需要将数据库文件放入不同的文件夹中。这就是例如%APPDATA%在 Windows 中的意图。

您可以使用该方法获取%APPDATA%环境变量的值。System.getenv()

在 Java 中,您还可以将其放入目录的user.home子目录中System.getProperty("user.home")

于 2013-05-05T17:20:16.333 回答