トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Java:Propertiesを使ってプロパティファイルを読み込む のバックアップ差分(No.1)


  • 追加された行はこの色です。
  • 削除された行はこの色です。
[[FrontPage]]

*Java:Propertiesを使ってプロパティファイルを読み込む [#k9dbab88]

Propertiesを使うサンプルです。

いつも調べているので、備忘のために、、、

ちなみに、Propertiesファイルは、

-src/resources/test.properties

にある前提です。

***リソースファイルの読み込み [#lcd8ab27]
ここがいつも忘れてしまうところです。

 Properties conf = new Properties();
 conf.load(this.getClass().getResourceAsStream("/resources/test.properties"));

リソースファイルに、Class#getResourceを使うべきか、ClassLoader#getResourceを使うべきか。

→Class#getResourceを使って、指定するパスの先頭には必ず「/」をつける、が正解っぽいです。

***ソース [#qcfefaed]
まず、プロパティファイルは以下のとおり。

■src/resources/test.properties
 PROP1=test1
 PROP2=test2
 PROP3=test3

次に、Javaのコード

■PropertyLoader
 import java.io.IOException;
 import java.util.Properties;
 
 public class PropertyLoader {
 
 	private Properties conf = null;
 
 	public PropertyLoader() throws IOException {
 
 		conf = new Properties();
 		conf.load(this.getClass().getResourceAsStream(
 				"/resources/test.properties"));
 	}
 	
 	public String getValue(String key){
 		return (String)conf.get(key);
 	}
 	
 
 	/**
 	 * @param args
 	 * @throws IOException 
 	 */
 	public static void main(String[] args) throws IOException {
 		PropertyLoader loader = new PropertyLoader();
 		
 		System.out.println(loader.getValue("PROP1"));
 		System.out.println(loader.getValue("PROP2"));
 		System.out.println(loader.getValue("PROP3"));
 	}
 }

***出力 [#zf95b795]
こんな感じです。
 test1
 test2
 test3