JAVA中的Configuration類詳解
本文主要研究的是Java中的Configuration類的用法,涉及maven自動(dòng)加載,pom.xml配置和簡(jiǎn)單的Java代碼,具體如下。
properties文件是Java平臺(tái)默認(rèn)的配置文件格式,其優(yōu)點(diǎn)是格式清晰,簡(jiǎn)單易懂,使用commons-configuration讀取properties文件也比較簡(jiǎn)單,代碼如下:
基本用法:
1.加載jar包,我使用maven自動(dòng)加載,pom.xml配置如下:
<dependency> <groupId>commons-configuration</groupId> <artifactId>commons-configuration</artifactId> <version>1.9</version> </dependency> <!-- commons-configuration 自動(dòng)加載的是2.1的版本,編譯時(shí)會(huì)報(bào)錯(cuò),所以再加上這個(gè) --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency>
common-lang這個(gè)包要用新版的,如果不寫這個(gè)依賴,commons-configuration會(huì)下載一個(gè)2.1舊版,導(dǎo)致編譯出錯(cuò)
2.java代碼:
PropertiesConfiguration config = new PropertiesConfiguration(“/database.properties”); String userName = config.getString("name");
除了getString()方法外,還有g(shù)etBoolean,getDouble,getInteger等不同返回類型的方法可以調(diào)用。
進(jìn)階用法:
一個(gè)項(xiàng)目有會(huì)有多個(gè)配置文件,這時(shí)有個(gè)統(tǒng)一的配置文件管理類就很有必要了,我寫了一個(gè)簡(jiǎn)單的,大家可以參考下,有不妥的用法也請(qǐng)指出來(lái)
1.java類
package com.xxx.xxx.util; import java.util.HashMap; import java.util.Map; import org.apache.commons.configuration.ConfigurationException; import org.apache.commons.configuration.PropertiesConfiguration; /** * <p> * 讀取配置文件類 * </p> * <p> * 根據(jù)配置文件名和屬性key返回屬性內(nèi)容,configUtil.get(configFile, property); * </p> * @author shengzhi.rensz * */ public class configUtil { private static configUtil initor = new configUtil(); private static Map<String, Object> configMap = new HashMap<String, Object>(); private configUtil() { } /** * 獲取內(nèi)容 * @param configFile * @param property * @return */ public static String get(String configFile, String property) { if(!configMap.containsKey(configFile)) { initor.initConfig(configFile); } PropertiesConfiguration config = (PropertiesConfiguration) configMap.get(configFile); String value = config.getString(property); //TODO LOG return value; } /** * 載入配置文件,初始化后加入map * @param configFile */ private synchronized void initConfig(String configFile) { try { PropertiesConfiguration config = new PropertiesConfiguration(configFile); configMap.put(configFile, config); } catch (ConfigurationException e) { e.printStackTrace(); } } }
2.調(diào)用方法
configUtil.get("/common/velocity.properties", "input.encoding");
public static void readProperties() throws ConfigurationException { PropertiesConfiguration pcfg = new PropertiesConfiguration("config/cfg.properties"); System.out.println(pcfg.getString("platform.jre")); }
注意,這里的路徑一定要搞清楚,配置文件是放在config文件夾中的;
總結(jié)
以上就是本文關(guān)于JAVA中的Configuration類詳解的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
WIN10系統(tǒng)中添加bat腳本重啟jar服務(wù)
在bat腳本中執(zhí)行java服務(wù),命令與cmd中類似,下面這篇文章主要給大家介紹了關(guān)于WIN10系統(tǒng)中添加bat腳本重啟jar服務(wù)的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12Java中l(wèi)ambda表達(dá)式實(shí)現(xiàn)aop切面功能
本文主要介紹了Java中l(wèi)ambda表達(dá)式實(shí)現(xiàn)aop切面功能,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02Springboot自動(dòng)配置原理及DataSource的應(yīng)用方式
這篇文章主要介紹了Springboot自動(dòng)配置原理及DataSource的應(yīng)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07Spring?main方法中如何調(diào)用Dao層和Service層的方法
這篇文章主要介紹了Spring?main方法中調(diào)用Dao層和Service層的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12IDEA中Javaweb項(xiàng)目圖片加載不出來(lái)解決方案
在IDEA中能夠正常的預(yù)覽到圖片,但是在生成項(xiàng)目的war包時(shí),項(xiàng)目的目錄結(jié)構(gòu)卻會(huì)發(fā)生變化,所以無(wú)法訪問(wèn)圖片,本文主要介紹了IDEA中Javaweb項(xiàng)目圖片加載不出來(lái)解決方案,感興趣的可以了解一下2023-10-10elasticsearch索引index之put?mapping的設(shè)置分析
這篇文章主要為大家介紹了elasticsearch索引index之put?mapping的設(shè)置分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Spring @Async 的使用與實(shí)現(xiàn)的示例代碼
本篇文章主要介紹了Spring @Async 的使用與實(shí)現(xiàn)的示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08SpringBoot整合Ehcache3的實(shí)現(xiàn)步驟
本文主要介紹了SpringBoot整合Ehcache3的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01