當前位置:首頁 » 編程語言 » java取配置文件

java取配置文件

發布時間: 2024-01-01 09:20:44

java讀取配置文件的幾種方法以及路徑問題

.類載入器讀取:
只能讀取classes或者類路徑中的任意資源,但是不適合讀取特別大的資源。
①獲取類載入器 ClassLoader cl = 類名.class.getClassLoader();
②調用類載入器對象的方法:public URL getResource(String name);
此方法查找具有給定名稱的資源,資源的搜索路徑是虛擬機的內置類載入器的路徑。
類 URL 代表一個統一資源定位符,它是指向互聯網」資源」的指針。
資源可以是簡單的文件或目錄,也可以是對更為復雜的對象的引用.
URL對象方法:public String getPath(),獲取此 URL 的路徑部分。
示例代碼:
2.類載入器讀取:
只能讀取classes或者類路徑中的任意資源,但是不適合讀取特別大的資源。
①獲取類載入器 ClassLoader cl = 類名.class.getClassLoader();
②調用類載入器對象的方法:public InputStream getResourceAsStream(String name);
返回讀取指定資源的輸入流。資源的搜索路徑是虛擬機的內置類載入器的路徑。

⑵ java中如何從當前項目中讀取運行另一項目中的配置文件

使用url統一資源定位符,前提是需要有訪問文件的許可權。


importjava.io.File;
importjava.net.URL;

importorg.apache.commons.io.FileUtils;

publicclassDownloadURLFile{

/**
*@paramargs
*/
publicstaticvoidmain(String[]args){

Stringres=downloadFromUrl("http://images.17173.com/2010/www/roll/201003/0301sohu01.jpg","d:/");
System.out.println(res);
}


(String核猜帆url,Stringdir){

try{
URLhttpurl=newURL(url);
StringfileName兆配=getFileNameFromUrl(url);
System.out.println(fileName);
Filef=newFile(dir+fileName);
FileUtils.URLToFile(httpurl,f);
}catch(Exceptione){
e.printStackTrace();
return"Fault!";
}
return"Successful!";
}

(Stringurl){
Stringname=改雹newLong(System.currentTimeMillis()).toString()+".X";
intindex=url.lastIndexOf("/");
if(index>0){
name=url.substring(index+1);
if(name.trim().length()>0){
returnname;
}
}
returnname;
}
}

⑶ Java 獲取配置文件路徑

讀取配置文件 , xxx.properties放在webroot/WEB-INF/classes/目錄下

首先將配置文件轉換成InputStream,有兩種方式,原理一樣,都是通過類載入器得到資源:

(1)InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("xx.properties");
(2) InputStream inputStream =
this.getClass() .getClassLoader().getResourceAsStream( "xx.properties" );
調用對象的getClass()方法是獲得對象當前的類類型,這部分數據存在方法區中,
而後在類類型上調用 getClassLoader()方法是得到當前類型的類載入器,我們知道在Java中所有的類都是通過載入器載入到虛擬機中的,而且類載入器之間存在父 子關系,就是子知道父,父不知道子,這樣不同的子載入的類型之間是無法訪問的(雖然它們都被放在方法區中),所以在這里通過當前類的載入器來載入資源也就 是保證是和類類型同一個載入器載入的。
最後調用了類載入器的getResourceAsStream()方法來載入資源。

(3) 然後載入配置文件,讀取屬性值
Properties prop = new Properties();
prop.load(input);
String value = prop.getProperty("PropertyName");

input.close();

熱點內容
滑鼠存儲 發布:2025-07-03 21:43:54 瀏覽:101
unity3d腳本打包 發布:2025-07-03 21:36:05 瀏覽:862
伺服器獨享寬頻怎麼樣 發布:2025-07-03 21:35:58 瀏覽:837
重慶哪裡有安卓手機專賣店 發布:2025-07-03 21:21:42 瀏覽:378
上傳ftp亂碼linux 發布:2025-07-03 21:20:26 瀏覽:333
多線程下載java 發布:2025-07-03 21:15:30 瀏覽:718
電腦做伺服器應該什麼配置 發布:2025-07-03 21:15:18 瀏覽:689
查看防火牆linux 發布:2025-07-03 21:07:10 瀏覽:88
phpjscss 發布:2025-07-03 20:43:01 瀏覽:215
p79選哪個配置 發布:2025-07-03 20:36:33 瀏覽:734