JAVA中的Configuration類詳解
本文主要研究的是Java中的Configuration類的用法,涉及maven自動加載,pom.xml配置和簡單的Java代碼,具體如下。
properties文件是Java平臺默認的配置文件格式,其優(yōu)點是格式清晰,簡單易懂,使用commons-configuration讀取properties文件也比較簡單,代碼如下:
基本用法:
1.加載jar包,我使用maven自動加載,pom.xml配置如下:
<dependency> <groupId>commons-configuration</groupId> <artifactId>commons-configuration</artifactId> <version>1.9</version> </dependency> <!-- commons-configuration 自動加載的是2.1的版本,編譯時會報錯,所以再加上這個 --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency>
common-lang這個包要用新版的,如果不寫這個依賴,commons-configuration會下載一個2.1舊版,導致編譯出錯
2.java代碼:
PropertiesConfiguration config = new PropertiesConfiguration(“/database.properties”);
String userName = config.getString("name");
除了getString()方法外,還有g(shù)etBoolean,getDouble,getInteger等不同返回類型的方法可以調(diào)用。
進階用法:
一個項目有會有多個配置文件,這時有個統(tǒng)一的配置文件管理類就很有必要了,我寫了一個簡單的,大家可以參考下,有不妥的用法也請指出來
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類詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
Java中l(wèi)ambda表達式實現(xiàn)aop切面功能
本文主要介紹了Java中l(wèi)ambda表達式實現(xiàn)aop切面功能,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
Springboot自動配置原理及DataSource的應用方式
這篇文章主要介紹了Springboot自動配置原理及DataSource的應用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
Spring?main方法中如何調(diào)用Dao層和Service層的方法
這篇文章主要介紹了Spring?main方法中調(diào)用Dao層和Service層的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12
elasticsearch索引index之put?mapping的設(shè)置分析
這篇文章主要為大家介紹了elasticsearch索引index之put?mapping的設(shè)置分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04
Spring @Async 的使用與實現(xiàn)的示例代碼
本篇文章主要介紹了Spring @Async 的使用與實現(xiàn)的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
SpringBoot整合Ehcache3的實現(xiàn)步驟
本文主要介紹了SpringBoot整合Ehcache3的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01

