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-02Springboot自動配置原理及DataSource的應用方式
這篇文章主要介紹了Springboot自動配置原理及DataSource的應用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07Spring?main方法中如何調(diào)用Dao層和Service層的方法
這篇文章主要介紹了Spring?main方法中調(diào)用Dao層和Service層的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12elasticsearch索引index之put?mapping的設置分析
這篇文章主要為大家介紹了elasticsearch索引index之put?mapping的設置分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04Spring @Async 的使用與實現(xiàn)的示例代碼
本篇文章主要介紹了Spring @Async 的使用與實現(xiàn)的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08SpringBoot整合Ehcache3的實現(xiàn)步驟
本文主要介紹了SpringBoot整合Ehcache3的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01