Java讀取.properties配置文件方法示例
一、介紹
Properties文件在Java中主要為配置文件,文件類型為:.properties,格式為文本文件,內(nèi)容格式為"鍵=值"
二、讀取
這里我采用的是getResourceAsStream的文件讀取方法
如果想要使用這個(gè)方法,則需要了解一些基本使用信息:
1、讀取文件路徑范圍:只局限于工程的源文件中
2、文件訪問形式:帶"/"是絕對(duì)路徑,不帶"/"是相對(duì)路徑
3、讀取文件類型:主要為:.properties文件,.xml文件
三、使用
主要方法有:
- 1、 load ( InputStream inStream) :從輸入流中讀取屬性列表(鍵和元素對(duì))。通過對(duì)指定的文件(比如的 beans.properties 文件)進(jìn)行裝載來獲取該文件中的所有鍵 - 值對(duì)。
- 2、 setProperty ( String key, String value) :調(diào)用 Hashtable 的方法 put 。他通過調(diào)用基類的put方法來設(shè)置 鍵 - 值對(duì)。
- 3、 getProperty ( String key) :用指定的鍵在此屬性列表中搜索屬性。也就是通過參數(shù) key ,得到 key 所對(duì)應(yīng)的 value。
- 4、 store ( OutputStream out, String comments) :以適合使用 load 方法加載到 Properties 表中的格式,將此 Properties 表中的屬性列表(鍵和元素對(duì))寫入輸出流。與 load 方法相反,該方法將鍵 - 值對(duì)寫入到指定的文件中去。
- 5、 clear ():清除所有裝載的 鍵 - 值對(duì)。該方法在基類中提供。
java項(xiàng)目配置文件存放位置:
Maven項(xiàng)目配置文件存放位置:
配置文件:
className = edu.nf.ch02.impl.Sub
java代碼:
public class Main { public static void main(String[] args) throws IOException { //創(chuàng)建Properties對(duì)象 Properties prop = new Properties(); //讀取classPath中的properties文件 prop.load(Main.class.getClassLoader().getResourceAsStream("bean.properties")); //根據(jù)鍵取出值 String className = prop.getProperty("className"); System.out.println(className); } }
運(yùn)行結(jié)果:
封裝的PropertiesUtil工具類:
public class PropertyUtil { private static Properties prop = new Properties(); static { try { prop.load(PropertyUtil.class.getClassLoader().getResourceAsStream("calculator.properties")); } catch (IOException e) { throw new RuntimeException(e.getMessage()); } } /** * 根據(jù)Name獲取Property * @param name * @return */ public static String getProperty(String name) { return prop.getProperty(name); } /** * 獲取所有的Property * @return */ public static List<String> getBeanFactoryClass() { List<String> list = new ArrayList<>(); Set<String> keys = prop.stringPropertyNames(); for (String key : keys) { list.add(prop.getProperty(key)); } return list; } }
以上所述是小編給大家介紹的Java讀取.properties配置文件詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
SWT(JFace)體驗(yàn)之ApplicationWindow
SWT(JFace)體驗(yàn)之ApplicationWindow2009-06-06淺談synchronized方法對(duì)非synchronized方法的影響
下面小編就為大家?guī)硪黄獪\談synchronized方法對(duì)非synchronized方法的影響。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10SpringBoot開發(fā)存儲(chǔ)服務(wù)器實(shí)現(xiàn)過程詳解
這篇文章主要為大家介紹了SpringBoot開發(fā)存儲(chǔ)服務(wù)器實(shí)現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12SpringBoot對(duì)Filter過濾器中的異常進(jìn)行全局處理方案詳解
這篇文章主要介紹了SpringBoot對(duì)Filter過濾器中的異常進(jìn)行全局處理,在SpringBoot中我們通過 @ControllerAdvice 注解和 @ExceptionHandler注解注冊(cè)了全局異常處理器,需要的朋友可以參考下2023-09-09JDK1.7以上javaFTP上傳刪除文件的實(shí)現(xiàn)方法
下面小編就為大家分享一篇JDK1.7以上javaFTP上傳刪除文件的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-11-11Spring Boot高級(jí)教程之Spring Boot連接MySql數(shù)據(jù)庫
這篇文章主要為大家詳細(xì)介紹了Spring Boot高級(jí)教程之Spring Boot連接MySql數(shù)據(jù)庫,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10