Springboot 如何指定獲取自己寫的配置properties文件的值
獲取yml的可以參考這篇:
Springboot 指定獲取出 yml文件裡面的配置值
www.jb51.net/article/217901.htm
直接進入正題:
先創建一個 配置文件test_config.properties:
test.number=123456789
接下來獲取test.number對應的值
這裡我們采取最直接的方式(也可以通過註解獲取),特意準備瞭個工具類 PropertiesUtil.java :
package com.test.webflux.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.StringUtils; import java.io.IOException; import java.io.InputStreamReader; import java.util.Properties; /** * 配置文件讀取 * * @Author: JCccc * @Des: ElegantDay */ public class PropertiesUtil { private static Logger log = LoggerFactory.getLogger(PropertiesUtil.class); private static Properties props; //項目根目錄文件夾內讀取 // static { // if (props == null) { // props = new Properties(); // try { // props.load(new FileInputStream("/testDemo/config/test_config.properties")); // } catch (IOException e) { // log.error("配置文件讀取異常", e); // } // } // } //resource文件夾內讀取 static { String fileName = "test_config.properties"; props = new Properties(); try { props.load(new InputStreamReader(PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName), "UTF-8")); } catch (IOException e) { log.error("配置文件讀取異常", e); } } /** * 根據配置文件中的key獲取value * @param key * @return */ public static String getProperty(String key) { String value = props.getProperty(key.trim()); if (StringUtils.isEmpty(value)) { return null; } return value.trim(); } /** * 根據配置文件中的key獲取value (當獲取不到值賦予默認值) * @param key * @param defaultValue * @return */ public static String getProperty(String key, String defaultValue) { String value = props.getProperty(key.trim()); if (StringUtils.isEmpty(value)) { value = defaultValue; } return value.trim(); } public static void main(String[] args) { System.out.println("配置文件中有key&value:"+PropertiesUtil.getProperty("test.number")); System.out.println("配置文件無有key&value,賦予默認值"+PropertiesUtil.getProperty("test.numberNone","默認值 JCccc")); } }
OK,測試下工具類的main方法:
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- java如何實時動態獲取properties文件的內容
- springBoot如何動態加載資源文件
- 如何讀取properties或yml文件數據並匹配
- java 實現web項目啟動加載properties屬性文件
- 聊聊ResourceBundle和properties讀取配置文件的區別