import org.apache.commons.collections.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import java.io.IOException; import java.io.InputStream; import java.util.Properties; @Service public class PropLoad { private static final Logger logger = LoggerFactory.getLogger(PropLoad.class); private static PropLoad instance = new PropLoad(); private Properties props = new Properties(); private PropLoad() { } public static synchronized String getProp(String key) { return instance.props.getProperty(key); } public static synchronized String getProp(String key, String defaultValue) { return instance.props.getProperty(key, defaultValue); } @PostConstruct public static void enter() { logger.debug("PropLoad init ..."); instance.init(); logger.debug("PropLoad init finish."); } private void init() { String path = "prop.properties"; //InputStream in = ClassLoader.getSystemResourceAsStream(path); //為了解決在idea外,無法訪問資源目錄的問題 InputStream in = this.getClass().getClassLoader().getResourceAsStream(path); if (in == null){ logger.error("file path error,please check"); } try { props.load(in); } catch (IOException e) { logger.error("load prop.properties error {}",e.getMessage()); }finally { try { in.close(); } catch (IOException e) { logger.error("InputStream close error"); } } } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/72143.html
摘要:如何實現(xiàn)這樣一個配置加載機(jī)制,讓我們擁有這個機(jī)制后,不會讓加載配置的代碼散布得到處都是,并且可擴(kuò)展,可管理。尾聲本文提出的配置加載機(jī)制,并不能夠?qū)嶋H幫忙加載配置,這事應(yīng)該留給,,以及其他一些開源庫如,去做。 前言 現(xiàn)如今幾乎大多數(shù)Java應(yīng)用,例如我們耳熟能詳?shù)膖omcat, struts2, netty...等等數(shù)都數(shù)不過來的軟件,要滿足通用性,都會提供配置文件供使用者定制功能。 甚...
摘要:前言我們知道在使用時,我們需要通過去創(chuàng)建實例,譬如為的配置文件那么我們看下方法的具體實現(xiàn)創(chuàng)建實例并執(zhí)行解析主要通過執(zhí)行對配置文件的解析,具體實現(xiàn)如下文配置文件解析解析標(biāo)簽解析標(biāo)簽解析別名標(biāo)簽解析插件標(biāo)簽解析標(biāo)簽解析標(biāo)簽解析標(biāo)簽從的方法實現(xiàn)我 前言 我們知道在使用 Mybatis 時,我們需要通過 SqlSessionFactoryBuild 去創(chuàng)建 SqlSessionFactory ...
摘要:觸發(fā)器文件可以手動更新,也可以使用插件進(jìn)行更新。例如,要配置重新啟動以始終使用觸發(fā)器文件,你需要添加以下屬性遠(yuǎn)程應(yīng)用程序開發(fā)工具并不局限于本地開發(fā),在遠(yuǎn)程運行應(yīng)用程序時,還可以使用幾個特性。 20. 開發(fā)者工具 Spring Boot包括一組額外的工具,這些工具可以使應(yīng)用程序開發(fā)體驗變得更加愉快,spring-boot-devtools模塊可以包含在任何項目中,以提供額外的develo...
摘要:常規(guī)的配置讓開發(fā)人員將更多的經(jīng)歷耗費在了配置文件上。其中有三個注解,,。以前我們需要配置的東西,幫我們自動配置,告訴開啟自動配置功能,這樣自動配置才能生效。 為什么需要自動化配置 ??在常規(guī)的spring應(yīng)用程序中,充斥著大量的配置文件,我們需要手動去配置這些文件,如配置組件掃描、視圖解析器、http編碼等等。常規(guī)的配置讓開發(fā)人員將更多的經(jīng)歷耗費在了配置文件上。而這些配置都是一些固定模...
摘要:常規(guī)的配置讓開發(fā)人員將更多的經(jīng)歷耗費在了配置文件上。其中有三個注解,,。以前我們需要配置的東西,幫我們自動配置,告訴開啟自動配置功能,這樣自動配置才能生效。 為什么需要自動化配置 ??在常規(guī)的spring應(yīng)用程序中,充斥著大量的配置文件,我們需要手動去配置這些文件,如配置組件掃描、視圖解析器、http編碼等等。常規(guī)的配置讓開發(fā)人員將更多的經(jīng)歷耗費在了配置文件上。而這些配置都是一些固定模...
閱讀 997·2021-11-23 09:51
閱讀 3490·2021-11-22 12:04
閱讀 2732·2021-11-11 16:55
閱讀 2964·2019-08-30 15:55
閱讀 3244·2019-08-29 14:22
閱讀 3365·2019-08-28 18:06
閱讀 1254·2019-08-26 18:36
閱讀 2141·2019-08-26 12:08