java讀取properties文件的方法

1.使用java.util.Properties類的load()方法java

示例:mysql

 //文件在項目下。不是在包下!!sql

 InputStream in = new BufferedInputStream(new FileInputStream("demo.properties")) ;  函數

Properties p = new Properties();學習

p.load(in) ;url

String className2 = p.getProperty("database.driver");spa

String url = p.getProperty("database.url");ssl

String user = p.getProperty("database.user");資源

String password = p.getProperty("database.pass");get


2. 使用java.util.Resourcebundle類的getbundle()方法  

 //前面沒有「/」表明當前類的目錄

示例:  

       //文件和類在同一個包下,注意它的文件名和後綴!!是調換的,

     // 這裏我也不知道爲何文件名和後綴名要調換?? 知道的麻煩您告訴我一聲,謝謝!!

     ResourceBundle resource = ResourceBundle.getBundle("properties.jdbc");  

   String className = resource.getString("database.driver");

   String url = resource.getString("database.url");

   String user = resource.getString("database.user");

   String password = resource.getString("database.pass");

           

3.使用java.util.PropertyResourceBundle類的構造函數

示例: 

                // 文件在項目下  或者  src/demo.properties 

               //  在 src/demo.properties  寫成 new FileInputStream("src/demo.properties") 

                 InputStream in = new BufferedInputStream(new             FileInputStream("demo.properties")); 

            

ResourceBundle rb = new PropertyResourceBundle(in) ;

String className4 = rb.getString("database.url");

           

4.使用class變量的getresourceasstream()方法


示例:   

   InputStream in =Properties.class.getResourceAsStream("/properties/jdbc.properties"); 

// 包點類名下的。

// 若是找不到帶有該名稱的資源,則返回 null

Properties p = new Properties();

p.load(in);

         System.out.println(p.getProperty("database.url")); 

5.使用class.getclassloader()所獲得的java.lang.classloader的getresourceasstream()方法     

 // properties 文件 要放在src下面,不然找不到啊

示例:          

    InputStream in = 類名.class.getClassLoader().getResourceAsStream("jdbc.properties");

Properties p = new Properties() ;

p.load(in); 

    System.out.println(p.getProperty("database.pass"));

6.使用java.lang.classloader類的getsystemresourceasstream()靜態方法           

 

示例:

 // 同包名下

 InputStream in = ClassLoader.getSystemResourceAsStream("properties/jdbc.properties"); 

Properties p = new Properties() ;

p.load(in) ;

                   System.out.println(p.getProperty("database.user"));




若是是 在WEB上讀取properties文件,我寫成下面這種。上面寫的那些只在 JavaSE 中


 不然就提示找不到文件(對於個人就是提示找不到)!!! 下面對這個文件我是放在src 下(就是在項目下/WEB-INF/classes)其實就是去找你的那個配置文件在哪裏就好了。我很笨ing 的。因此一字一句的寫,哪天健忘了,能夠回來再看。


 String path = Thread.currentThread().getContextClassLoader().getResource("").getPath(); 


System.out.println(path);


InputStream in = new FileInputStream(new File(path+File.separator+"mysql.properties"));


Properties prop = new Properties();

        鄙人菜鳥一個,但願和你們一塊兒學習,共同進步,若有不對的地方望你們糾正!

相關文章
相關標籤/搜索