這幾天做乙個專案,關於路徑做如下筆記,有需要供參考。
取工程內的檔案,一般都要用相對路徑,這個自然不用多說。
在src統計目錄建配置檔案目錄res,在res中放入配置檔案。
讀取檔案使用方式:
1. mytest.class.getresourceasstream("/res/xx.properties")
2. properties.load(mytest.class.getclassloader().getresourceasstream("res/xx.properties"));
看清楚檔案位址的區別,乙個"/"
1.mytest累的路徑在bin下的包內。如:/serversockettest/bin/com/uisftech/test/
2. classloader的載入路徑在bin下
如:/serversockettest/bin/
這樣在eclipse中執行肯定的沒有問題。但是我的專案要求打成jar包,如果只是讀取配置檔案,肯定沒有問題,但是如果是寫入就會有問題,因為jar在執行,它是乙個檔案,乙個檔案執行時不能寫入,這樣檔案就要拿到jar包外面
這樣讀取檔案就要使用如下方式:registerconfig.load(new fileinputstream("registerconfig.properties"));
如果不寫入檔案,打成jar包讀取檔案不能使用這種方式:registerconfig.load(new fileinputstream(clientservice.class.getclassloader().getresource("registerconfig.properties").getfile()));
因為讀取jar內的檔案路徑不是標準路徑,這樣方式會報錯。
供參考。
Java讀取配置檔案路徑設定
讀配置檔案推薦做法 1.test.class.getresource 獲取test類所在路徑 2.test.class.getresource 獲取classpath的絕對路徑 3.thread.currentthread getcontextclassloader getresource 同上4....
Java配置檔案讀取和路徑設定
記錄幾種讀取配置檔案的方法,以及配置檔案的放置路徑。1 使用propertiesloaderutils工具類 springframework包提供 優點 實時載入配置檔案,修改後立即生效,不必重啟 配置檔案至於classpath中 與class檔案放在一起,如果打jar包需打到包內 如下 priva...
java 讀取配置檔案
前幾天因為配置檔案的事,線上的job掛掉了,使用的是spring載入配置檔案方式。spring配置如下 test.properties api test.properties decryptpropertyplaceholderconfigurer類如下所示。public class decrypt...