av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Springboot多種情況yml配置代碼實(shí)例

瀏覽:3日期:2023-05-07 14:41:13

springboot 中各種配置項(xiàng)紀(jì)錄

1. @Value

最早獲取配置文件中的配置的時(shí)候,使用的就是這個(gè)注解,SpEL表達(dá)式語(yǔ)言。

// 使用起來(lái)很簡(jiǎn)單@Value('${config.demo.value:defaultValue}') private String simpleValue;

通常我們配置的時(shí)候,不僅僅是一個(gè)單獨(dú)字段,可能是一組配置,用來(lái)組成一個(gè)對(duì)象。這個(gè)時(shí)候spring為我們提供了這個(gè)注解。

簡(jiǎn)單的對(duì)象,在yml里也可以很簡(jiǎn)單的寫(xiě)出來(lái)。直接把每一個(gè)字段寫(xiě)出即可。

而對(duì)復(fù)雜對(duì)象,如:list、map等的,就需要查一下資料了,這里簡(jiǎn)單記錄一下寫(xiě)法,直接看代碼。

# 配置示例config: demo: value: testValue simpleConfig: config: testConfig str1: abc,cde str2: - abc - cde configMap: key1: value1 海賊王: 路飛 simpleConfigs: - config: 羅賓 count: 1 - config: 烏索普 count: 1 - config: 索隆 count: 1 configObjMap: key1: config: value1 key2: config: value2

pojo 對(duì)象定義如下:

@Data@ConfigurationProperties(prefix = 'config.demo')@Configurationpublic class ConfigDemo { @Value('${config.demo.value:defaultValue}') private String simpleValue; /**===========簡(jiǎn)單對(duì)象===========*/ /** * 對(duì)象 */ private SimpleConfig simpleConfig; /** * 字符串?dāng)?shù)組1 */ private List<String> str1; /** * 字符串?dāng)?shù)組1 */ private List<String> str2; /** * 鍵值對(duì) */ private Map<String, String> configMap; /** * ===========多個(gè)復(fù)雜對(duì)象========== */ /** * 對(duì)象集合 */ private List<SimpleConfig> simpleConfigs; /** * 對(duì)象作為map值 */ private Map<String, SimpleConfig> configObjMap; @Data public static class SimpleConfig { // 注意:這里需要內(nèi)部類(lèi)是public的,要不然注入的時(shí)候會(huì)出錯(cuò)。 private String config; private int count; }}

以上就是各種情況的書(shū)寫(xiě)。其實(shí)也不難,list 就增加 - 來(lái)作為單個(gè)對(duì)象標(biāo)識(shí),而map就直接寫(xiě)key即可。

而spring在存儲(chǔ)properties的時(shí)候是怎么處理的呢,我們可以斷點(diǎn)一下 PropertyPlaceholderHelper,在這里我們可以看到存儲(chǔ)各種配置的source如下圖:

Springboot多種情況yml配置代碼實(shí)例

底層都是通過(guò)一個(gè)ResourceReloadingMap來(lái)存儲(chǔ)的,那么存儲(chǔ)list的時(shí)候,是什么結(jié)構(gòu)呢,如下:

Springboot多種情況yml配置代碼實(shí)例

// 存儲(chǔ)的時(shí)候是這樣的:simpleConfigs[0].config=configValuesimpleConfigs[0].count=countValue...

所以最終都是通過(guò)鍵值對(duì)的方式,只是對(duì)應(yīng)的格式,spring可以解析成對(duì)應(yīng)的樣子而已。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 91av精品| 成人在线视频网 | 一区二区三区在线免费 | 一区二区影视 | 国产午夜激情 | 视频一区在线播放 | 亚洲国产成人精品女人 | 香蕉视频一区二区三区 | 欧美日韩精品一区二区在线播放 | 欧美操| 伊人久久综合 | 色婷婷国产精品综合在线观看 | 男女久久久 | 四虎影院在线 | 中文字幕在线免费看 | 亚洲欧美一区二区三区在线 | 色人人 | 欧美黄色片视频 | 欧美一级特黄视频 | 天天射夜夜操 | 久草福利在线观看 | 日韩精品网站 | 日韩一区不卡 | 色虎网站 | 91看片看淫黄大片 | 亚洲综合三区 | 成人免费视频一区二区 | 一级黄色小视频 | 天天爽天天操 | 日韩在线免费 | 91成人亚洲| 亚洲欧美日韩色图 | 日韩精品区 | 97国产在线视频 | 亚洲精品久久 | 91伊人| 婷婷久久五月 | av片在线看 | 日韩在线综合 | 国产h片在线观看 | 亚洲国产成人在线 |