Springboot 如何指定獲取自己寫(xiě)的配置properties文件的值
獲取yml的可以參考這篇:
Springboot 指定獲取出 yml文件里面的配置值
m.fzitv.net/article/217901.htm
直接進(jìn)入正題:
先創(chuàng)建一個(gè) 配置文件test_config.properties:

test.number=123456789
接下來(lái)獲取test.number對(duì)應(yīng)的值
這里我們采取最直接的方式(也可以通過(guò)注解獲取),特意準(zhǔn)備了個(gè)工具類(lèi) 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;
//項(xiàng)目根目錄文件夾內(nèi)讀取
// static {
// if (props == null) {
// props = new Properties();
// try {
// props.load(new FileInputStream("/testDemo/config/test_config.properties"));
// } catch (IOException e) {
// log.error("配置文件讀取異常", e);
// }
// }
// }
//resource文件夾內(nèi)讀取
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);
}
}
/**
* 根據(jù)配置文件中的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();
}
/**
* 根據(jù)配置文件中的key獲取value (當(dāng)獲取不到值賦予默認(rèn)值)
* @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("配置文件無(wú)有key&value,賦予默認(rèn)值"+PropertiesUtil.getProperty("test.numberNone","默認(rèn)值 JCccc"));
}
}
OK,測(cè)試下工具類(lèi)的main方法:

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring啟動(dòng)時(shí)實(shí)現(xiàn)初始化的幾種方案
這篇文章主要介紹了Spring啟動(dòng)時(shí)實(shí)現(xiàn)初始化的幾種方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
解析Neatbeans(常見(jiàn)錯(cuò)誤) build-impl.xml:305: Compile failed
本篇文章是對(duì)Neatbeans(常見(jiàn)錯(cuò)誤) build-impl.xml:305: Compile failed的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07
SpringCloud將Nacos作為配置中心實(shí)現(xiàn)流程詳解
這篇文章主要介紹了Springcloud中的Nacos Config服務(wù)配置,本文以用戶微服務(wù)為例,進(jìn)行統(tǒng)一的配置,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10
Spring?Boot攔截器和監(jiān)聽(tīng)器實(shí)現(xiàn)對(duì)請(qǐng)求和響應(yīng)處理實(shí)戰(zhàn)
這篇文章主要介紹了Spring?Boot攔截器和監(jiān)聽(tīng)器實(shí)現(xiàn)對(duì)請(qǐng)求和響應(yīng)處理實(shí)戰(zhàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
SpringBoot使用validation做參數(shù)校驗(yàn)的實(shí)現(xiàn)步驟
這篇文章主要介紹了SpringBoot使用validation做參數(shù)校驗(yàn)的實(shí)現(xiàn)步驟,幫助大家更好的理解和學(xué)習(xí)使用SpringBoot,感興趣的朋友可以了解下2021-05-05
使用Java實(shí)現(xiàn)Excel轉(zhuǎn)PDF的示例詳解
在實(shí)際的開(kāi)發(fā)過(guò)程中,我們常常會(huì)遇到需要將 Excel 文件轉(zhuǎn)換為 PDF 文件的需求,本文為大家介紹一種Java中的常見(jiàn)實(shí)現(xiàn)方式,需要的可以參考一下2025-02-02
如何將二進(jìn)制文件流轉(zhuǎn)化為MockMultipartFile文件
文章主要介紹了如何使用Spring框架中的MockMultipartFile類(lèi)來(lái)模擬文件上傳,并處理上傳邏輯,包括獲取二進(jìn)制文件流、創(chuàng)建MockMultipartFile對(duì)象、處理上傳邏輯和返回響應(yīng),還解釋了MockMultipartFile的功能和二進(jìn)制文件流的定義2025-02-02
IDEA使用GsonFormat完成JSON和JavaBean之間的轉(zhuǎn)換
這篇文章主要介紹了IDEA使用GsonFormat完成JSON和JavaBean之間的轉(zhuǎn)換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Java 實(shí)現(xiàn)repalceAll只替換第二個(gè)匹配到的字符串
這篇文章主要介紹了Java 實(shí)現(xiàn)repalceAll只替換第二個(gè)匹配到的字符串,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-12-12
詳解Java中的四種引用類(lèi)型(強(qiáng)軟弱虛)
Java中的引用類(lèi)型主要分為四種,分別是強(qiáng)引用、軟引用、弱引用和虛引用,這篇文章主要為大家詳細(xì)介紹了四者的使用與區(qū)別,需要的小伙伴可以參考下2023-10-10

