使用ResourceBundle讀取配置文件




在Java語言中,使用一種以.properties為擴展名的文本文件作為資源文件,該類型的文件的內容格式為類似: 

1
2
#注釋語句
some_key=some_value



形式。以#開頭的行作為注釋行,ResourceBundle類處理時會加以忽略;其余的行可以以 key名=value值 的形式加以記述。這樣的話,一般我們將數據庫的配置文件以這樣的形式展現。 

Java的ResourceBundle類可以對這種形式的文件加以處理。 

ResourceBundle類的使用方法也非常簡單。我們使用一個例子來說明。 

假如我現在有一個數據庫的配置文件,我將它寫為資源文件的樣式,則為:

1
2
3
4
5
#數據庫配置信息
DRIVER=com.mysql.jdbc.Driver
URL=jdbc:mysql://localhost:3306/cns
user=test
password=test



接下來,我們使用ResourceBundle類處理:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package Forum;
 
import java.util.*;
 
public class RedProFile {
	 public static void main(String[] a){
	String resourceFile = "Forum.CNS";    
//	        創建一個默認的ResourceBundle對象   
//	        ResourceBundle會查找包Forum下的CNS.properties的文件   
//	        Forum是資源的包名,它跟普通java類的命名規則完全一樣:   
//	        - 區分大小寫   
//	        - 擴展名 .properties 省略。就像對於類可以省略掉 .class擴展名一樣   
//	        - 資源文件必須位於指定包的路徑之下(位於所指定的classpath中)   
//            假如你是在非Web項目中使用,則一定要寫資源文件的路徑,也就是包路徑必須存在。
//            如果是Web項目,不寫包路徑可以,此時將資源文件放在WEB-INF\classes\目錄下就可以。
	ResourceBundle rb = ResourceBundle.getBundle(resourceFile);
	System.out.println(rb.getString("DRIVER"));//這里是分大小寫的,嘿嘿輸出值為jdbc:mysql://localhost:3306/cns
	 }
}



這樣就簡單多了,呵呵 

這是我轉來的稍加修改的提取最簡單的部分的,非常感謝原作者。原文見【http://www.lifevv.com/java/doc/20080205000526940.html】 

 

使用ResourceBundle類中的getString進行簡單讀取

,要想實現替換功能,需要使用MessageFormat類中的

public static String format(String pattern,Object... arguments)方法,用時自行百度


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM