解讀@ConfigurationProperties使用時(shí)的幾個(gè)常見誤區(qū)
@ConfigurationProperties使用時(shí)幾個(gè)常見誤區(qū)
1、@ConfigurationProperties可以讀取properties文件
但不可以讀取yml或者yaml文件(可以讀取application.yaml/yml)
2、使用@ConfigurationProperties(prefix=“demo”)
結(jié)合@PropertySource指定文件名為xxx.properties時(shí),如果application.properties/yaml/yml配置文件里存在以demo為前綴的字段,并且字段相匹配,
讀取到的數(shù)據(jù)將會(huì)是application.properties/yaml/yml文件中的,此時(shí)指定xxx.properties無效;
并且application.properties優(yōu)先級高于application.yaml/yml
3、@ConfigurationProperties(prefix=“demoAbc”)
不論是properties/yaml/yml哪種文件,prefix都不能以駝峰形式命名,否則會(huì)報(bào)錯(cuò),找不到該前綴,全小寫形式就可以
4、使用@ConfigurationProperties時(shí)
必須使用lombok的@Data注解,或者自己手動(dòng)加入字段的set、get 方法,
否則獲取到的值全為null,該注解沒有通過@Value來顯式讀取數(shù)據(jù),底層可能通過set、get方法來獲取值。

5、@ConfigurationProperties作用的類
限定prefix=demo時(shí),如果配置文件中沒有demo.xxxa,而該類中定義了字段String xxxa時(shí),默認(rèn)該字段為null,不會(huì)報(bào)錯(cuò);
就算找不到匹配的prefix,也會(huì)默認(rèn)將所有字段置為null
6、@ConfigurationProperties的ignoreUnknownFields 屬性默認(rèn)=true的
如果為false,當(dāng)配置文件中有字段demo.xxxb,而類中沒有xxxb字段時(shí),將會(huì)報(bào)錯(cuò)。

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot自動(dòng)裝配原理詳細(xì)解析
這篇文章主要介紹了SpringBoot自動(dòng)裝配原理詳細(xì)解析,一個(gè)對象交給Spring來管理的三種方式 @Bean @Compoment @Import,2024-01-01
@Bean主要在@Configuration中,通過方法進(jìn)行注入相關(guān)的Bean,@Compoent與@Service歸為一類,在類上加注入對應(yīng)的類,需要的朋友可以參考下
Spring Cloud Gateway使用Token驗(yàn)證詳解
這篇文章主要介紹了Spring Cloud Gateway使用Token驗(yàn)證詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-02-02
基于SpringBoot實(shí)現(xiàn)Web應(yīng)用的登錄與退出功能
登錄與退出功能作為 Web 應(yīng)用中的基礎(chǔ)且重要的組成部分,直接關(guān)系到用戶的安全和隱私保護(hù),所以本文給大家介紹了基于SpringBoot實(shí)現(xiàn)Web應(yīng)用的登錄與退出功能,文中有詳細(xì)的代碼供大家參考,需要的朋友可以參考下2024-04-04
Java使用動(dòng)態(tài)規(guī)劃算法思想解決背包問題
背包問題(Knapsack problem)是一種組合優(yōu)化的NP完全問題。問題可以描述為:給定一組物品,每種物品都有自己的重量和價(jià)格,在限定的總重量內(nèi),我們?nèi)绾芜x擇,才能使得物品的總價(jià)格最高2022-04-04
java集合List快速實(shí)現(xiàn)重復(fù)判斷的方法小結(jié)
在java編寫代碼中經(jīng)常會(huì)遇到某些重復(fù)判定或者去重的操作,本文主要為大家介紹了幾個(gè)常用方法,感興趣的小伙伴可以跟隨不想一起學(xué)習(xí)一下2024-12-12
Spring?Security使用數(shù)據(jù)庫登錄認(rèn)證授權(quán)
本文主要介紹了Spring?Security使用數(shù)據(jù)庫登錄認(rèn)證授權(quán),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01

