SpringBoot中屬性賦值操作的實(shí)現(xiàn)
說明:當(dāng)程序中出現(xiàn)頻繁變化的數(shù)據(jù)時(shí),如果采用認(rèn)為的方式進(jìn)行修改并且編譯打包則會(huì)導(dǎo)致代碼的耦合性較高,不便于維護(hù)!所以能否為屬性動(dòng)態(tài)賦值?
屬性固定值
//動(dòng)態(tài)獲取ip和端口數(shù)據(jù)
/**
* @responseBody
* 注解作用:
* 1.將對(duì)象轉(zhuǎn)化成Json格式,
* 2.如果返回值是String類型,則返回字符串本身
* 3.一般客戶端發(fā)起ajax請(qǐng)求時(shí),采用該注解返回?cái)?shù)據(jù),將不會(huì)執(zhí)行視圖解析器操作
*/
@RestController
public class RedisController{
private String host="192.168.126.112";
private Integer port=6379;
public String getMsg(){
return host+":"+port;
}
}
動(dòng)態(tài)獲取ip和端口數(shù)據(jù)
關(guān)于YML文件說明
#YML文件語法: # 1.key:(空格) value 注意:value前面有個(gè)空格 # 2.key與key之間有層級(jí)的縮進(jìn)關(guān)系 server: port: 8090 #屬性賦值操作,編輯屬性時(shí)注意前綴,只要springboot啟動(dòng),該數(shù)據(jù)就會(huì)被寫入內(nèi)存中,key-value格式 redis: host: 192.168.126.130 port: 6379
為屬性賦值操作
public class RedisController {
@Value("${redis.host}") //spel表達(dá)式
private String host; // = "192.168.126.130"; private String host; // = "192.168.126.130";
@Value("${redis.port}")
private Integer port; // = 6379;
@RequestMapping("/getMsg")
public String getMsg(){
return host + ":" + port;
}
}
指定配置文件為屬性賦值
說明:由于YML配置文件中的數(shù)據(jù)一般都是系統(tǒng)級(jí)別的數(shù)據(jù),所以一般的業(yè)務(wù)數(shù)據(jù)都會(huì)寫到peoperties配置文件中。

編輯RedisController
@RestController
//動(dòng)態(tài)導(dǎo)入pro配置文件,交給spring容器進(jìn)行加載
@PropertySource("classpath:/properties/redis.properties")
public class RedisController {
//通過YML給屬性賦值
@Value("${redis.host}")//sple表達(dá)式
private String host;
@Value("${redis.port}")
private Integer port;
@RequestMapping("/getMsg")
public String getMsg(){
return host+":"+port;
}
/*由于YML配置文件中的數(shù)據(jù)一般都是系統(tǒng)級(jí)別的數(shù)據(jù),所以一般的業(yè)務(wù)數(shù)據(jù)
都會(huì)寫到peoperties配置文件中*/
//通過properties給屬性賦值
@Value("${pro.redis.host}")
private String prohost;
@Value("${pro.redis.port}")
private Integer proport;
@RequestMapping("/getpro")
public String getpro(){
return prohost+":"+proport;
}
}
到此這篇關(guān)于SpringBoot中屬性賦值操作的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot 屬性賦值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java與Unix時(shí)間戳的相互轉(zhuǎn)換詳解
這篇文章主要為大家詳細(xì)介紹了Java與Unix時(shí)間戳的相互轉(zhuǎn)換,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
如何實(shí)現(xiàn)Java監(jiān)聽器詳解
今天帶大家了解Java監(jiān)聽器是如何實(shí)現(xiàn)的及實(shí)現(xiàn)原理是什么,文中有非常詳細(xì)的說明,對(duì)正在學(xué)習(xí)的小伙伴們很有幫助,需要的朋友可以參考下2021-06-06
MAC?在類路徑或引導(dǎo)類路徑中找不到程序包?java.lang問題
這篇文章主要介紹了MAC?在類路徑或引導(dǎo)類路徑中找不到程序包?java.lang問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11
SpringBoot + MapStruct 屬性映射工具的使用詳解
MapStruct 是一個(gè)代碼生成器,簡化了不同的 Java Bean 之間映射的處理,所謂的映射指的就是從一個(gè)實(shí)體變化成一個(gè)實(shí)體。接下來通過本文給大家介紹SpringBoot + MapStruct 屬性映射工具的使用,需要的朋友可以參考下2021-09-09
Java中的Semaphore信號(hào)量簡單使用代碼實(shí)例
這篇文章主要介紹了Java中的Semaphore信號(hào)量簡單使用代碼實(shí)例,Semaphore是用來保護(hù)一個(gè)或者多個(gè)共享資源的訪問,Semaphore內(nèi)部維護(hù)了一個(gè)計(jì)數(shù)器,其值為可以訪問的共享資源的個(gè)數(shù),一個(gè)線程要訪問共享資源,需要的朋友可以參考下2023-12-12

