我有一個連接到derby數據庫的java桌面應用程序 derby數據庫有一些用於試用目的的虛擬數據。 應用程序與數據庫一起打包(作爲嵌入式德比數據庫)。 當我的Windows 7操作系統的桌面上安裝應用程序時,我可以按照預期的方式 訪問虛擬數據。但是,當應用程序安裝在程序文件文件夾中時,我無法訪問數據庫以及數據庫中的數據。在Windows 7上安裝Java桌面應用程序O.S
對此有任何解釋嗎?
我有一個連接到derby數據庫的java桌面應用程序 derby數據庫有一些用於試用目的的虛擬數據。 應用程序與數據庫一起打包(作爲嵌入式德比數據庫)。 當我的Windows 7操作系統的桌面上安裝應用程序時,我可以按照預期的方式 訪問虛擬數據。但是,當應用程序安裝在程序文件文件夾中時,我無法訪問數據庫以及數據庫中的數據。在Windows 7上安裝Java桌面應用程序O.S
對此有任何解釋嗎?
「程序文件」文件夾對於標準用戶是不可寫入的(出於很好的理由)。不要在那裏存儲任何用戶數據。
您需要將數據庫文件放入不同的文件夾。這是例如%APPDATA%
旨在用於Windows。
您可以使用System.getenv()
方法獲取%APPDATA%
環境變量的值。
從Java內部你也可以把它變成一個子目錄使用System.getProperty("user.home")
感謝您的解釋。將盡力回覆你 – CodeAngel 2013-05-05 17:28:11
_「我Java中的Java桌面應用程序」的
user.home
目錄_ ...什麼? – 2013-05-05 17:05:28