1. 程式人生 > >java 讀取配置檔案的幾種方法

java 讀取配置檔案的幾種方法

      讀取.properties配置檔案在實際的開發中使用的很多,總結了一下,有以下幾種方法(僅僅是我知道的):

一.通過jdk提供的java.util.Properties類

        此類繼承自java.util.HashTable,即實現了Map介面,所以,可使用相應的方法來操作屬性檔案,但不建議使用像put、putAll這 兩個方法,因為put方法不僅允許存入String型別的value,還可以存入Object型別的。因此java.util.Properties類提 供了getProperty()和setProperty()方法來操作屬性檔案,同時使用store或save(已過時)來儲存屬性值(把屬性值寫 入.properties配置檔案)。在使用之前,還需要載入屬性檔案,它提供了兩個方法:load和loadFromXML。

        load有兩個方法的過載:load(InputStream inStream)、load(Reader reader),所以,可根據不同的方式來載入屬性檔案。

        可根據不同的方式來獲取InputStream,如:

1.通過當前類載入器的getResourceAsStream方法獲取下載地址

  1. InputStream inStream = TestProperties.class.getClassLoader().getResourceAsStream("test.properties");  

2.從檔案獲取

  1. InputStream inStream = 
    new FileInputStream(new File("filePath"));  

3.也是通過類載入器來獲取,和第一種一樣

  1. InputStream in = ClassLoader.getSystemResourceAsStream("filePath");  

4.在servlet中,還可以通過context來獲取InputStream

  1. InputStream in = context.getResourceAsStream("filePath");  

5.通過URL來獲取

  1. URL url = new URL("path");  
  2. InputStream inStream = url.openStream();  

讀取方法如下:

  1. Properties prop = new Properties();    
  2. prop.load(inStream);    
  3. String key = prop.getProperty("username");    
  4. //String key = (String) prop.get("username");

二.通過java.util.ResourceBundle類讀取

        這種方式比使用Properties要方便一些。

1.通過ResourceBundle.getBundle()靜態方法來獲取

        ResourceBundle是一個抽象類,這種方式來獲取properties屬性檔案不需要加.properties字尾名,只需要檔名即可。

  1. ResourceBundle resource = ResourceBundle.getBundle("com/mmq/test");//test為屬性檔名,放在包com.mmq下,如果是放在src下,直接用test即可  
  2. String key = resource.getString("username");  

2.從InputStream中讀取

        獲取InputStream的方法和上面一樣,不再贅述。

  1. ResourceBundle resource = new PropertyResourceBundle(inStream);  

        注意:在使用中遇到的最大的問題可能是配置檔案的路徑問題,如果配置檔案入在當前類所在的包下,那麼需要使用包名限定,如:test.properties入在com.mmq包下,則要使用com/mmq/test.properties(通過Properties來獲取)或com/mmq/test(通過ResourceBundle來獲取);屬性檔案在src根目錄下,則直接使用test.properties 下載地址或test即可。

相關推薦

java讀取配置檔案的推薦方法getResource、getResourceAsStream

在java開發中經常會讀取配置檔案,如果把檔案路徑寫死,就太LOW了,也不符合編碼規範。 在網上找了一些資料後,發現有兩種方法:xxx.class.getResource("")  和 xxx.class.getClassLoader().getResource("") 1.先看一個例子:

java讀取寫入檔案方式效率比較

public class ReadTxtJson {public static String readTxtFile(String FileName) throws Exception {BufferedInputStream bufferedInputStream = n

java讀取配置檔案方法

在現實工作中,我們常常需要儲存一些系統配置資訊,大家一般都會選擇配置檔案來完成,本文根據筆者工作中用到的讀取配置檔案的方法小小總結一下,主要敘述的是spring讀取配置檔案的方法。 一.讀取xml配置檔案 (一)新建一個java bean(HelloBean.java

java 讀取配置檔案方法

      讀取.properties配置檔案在實際的開發中使用的很多,總結了一下,有以下幾種方法(僅僅是我知道的): 一.通過jdk提供的java.util.Properties類         此類繼承自java.util.HashTable,即實現了Map介面

Java讀取配置檔案方法以及路徑問題

在現實工作中,我們常常需要儲存一些系統配置資訊,大家一般都會選擇配置檔案來完成,本文根據筆者工作中用到的讀取配置檔案的方法小小總結一下,主要敘述的是spring讀取配置檔案的方法。 一.讀取xml配置檔案 (一)新建一個java bean(HelloBean.java) j

java讀取配置檔案方式

web工程一般都會連線資料庫,然而載入資料庫配置檔案主要有幾種。1.讀取properties檔案,連線資料庫   //這是最簡單的方式,注:config.properties在src目錄下#DB Properties Driver=com.microsoft.sqlserve

java讀取配置檔案的一些方法 getResourceAsStream 和 直接 FileInputStream 以及 配置System.getProperty("user.dir")所得的工作目錄

配置檔案位於 /src/ 下的情況已經由上述博主列出,需要的可以移步檢視,即以下幾個情況 1.路徑:src/aa.xml 2.位於src下同一個包下 3.位於src下不同包 不過本博主的專案是web專案,而配置檔案放在src檔案下容易因為快取導致更新不及時,

Android Studio下Svn忽略檔案配置方法

一、Android Studio建立的Android專案一般需要忽略 1、.idea資料夾 2、.gradle資料夾 3、所有的build資料夾 4、所有的.iml檔案 5、local.

springBoot使用Controller讀取配置檔案方式&讀取自定義配置方法

Controller 核心配置檔案 application.propertie web.msg=Hello! This is Controller demo; Controller:

java寫入檔案方法

  在java中我常用的向檔案中寫入新內容的三種方法,分別是FileWritter,BufferedWriter ,FileOutputStream下面我分別給各位介紹三個例項希望對你有所幫助。   一,FileWritter寫入檔案   FileWritter, 字元流寫

java資料庫連線池配置方法

一,Tomcat配置資料來源: 方式一:在WebRoot下面建資料夾META-INF,裡面建一個檔案context.xml,內容如下:  <Context>       <Resource name="jdbc/test" auth="Container" type="javax.sq

java讀取配置檔案.properties資料

util.properties testkey=test123 java_web: import java.util.Properties; import org.springframework.stereotype.Component; /** * 獲取配置檔案資訊

Java定時任務的方法(Thread 和 Timer,執行緒池)

/**   * 普通thread   * 這是最常見的,建立一個thread,然後讓它在while迴圈裡一直執行著,   * 通過sleep方法來達到定時任務的效果。這樣可以快速簡單的實現,程式碼如

Java建立物件的方法

有時候,也可能碰到這樣面試題,如: Java建立物件有哪幾種方法? 除了new之外,java建立物件還有哪幾種方式? 本文結合例子,給出幾種Java建立物件的方法,Here we go~~~~ 使用new建立 這是最常用的一種。如: Book b

Struts2——strtus.xml中method配置方法

strtus.xml中method配置的幾種方法 public class ProductAction extends ActionSupport{public String find(){System.out.println("find");return Action.S

java讀取配置檔案終結

第一種方式 配置檔案在包路徑下面 使用類載入器讀取配置檔案程式碼如下: 這是使用getClassLoader方法在包路徑的前面不需要加/ InputStream resource = JDBCUtils.class.getClassLoader().getResourceAsStr

C#讀取路徑的方法

//獲取包含清單的已載入檔案的路徑或 UNC 位置。        public static string sApplicationPath = Assembly.GetExecutingAssembly ().Location;        //result: X:

java呼叫webservice介面 方法

webservice的 釋出一般都是使用WSDL(web service descriptive language)檔案的樣式來發布的,在WSDL檔案裡面,包含這個webservice暴露在外面可供使用的介面。今天搜尋到了非常好的 webservice provide

Python專案讀取配置方式

1. 將配置寫在Python檔案中 配置檔案(config.py 或 settings.py) 通常放置在程式原始碼的目錄,方便引用  配置檔案 # settings.py class Config(object): DEBUG = False TESTING = False

設定Java環境變數的方法

JAVA中常用需要設定的三個環境變數:JAVA_HOME、CLASSPATH、PATH(一)配置環境變數:(相對路徑)1.JAVA_HOME=x:\jdk1.6.0JAVA_HOME2.用%JAVA_HOME%就可以取代:x:\jdk1.6.0這一部分CLASSPATH=.: