最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring?Boot中使用@Value加載配置的方法

 更新時(shí)間:2024年05月25日 08:58:26   作者:程序猿DD  
@Value注解相信很多Spring Boot的開發(fā)者都已經(jīng)有接觸了,通過使用該注解,我們可以快速的把配置信息加載到Spring的Bean中,這篇文章主要介紹了為什么不推薦在SpringBoot中使用@Value加載配置,需要的朋友可以參考下

@Value注解相信很多Spring Boot的開發(fā)者都已經(jīng)有接觸了,通過使用該注解,我們可以快速的把配置信息加載到Spring的Bean中。

比如下面這樣,就可以輕松的把配置文件中key為com.didispace.title配置信息加載到TestService中來使用

@Service
public class TestService {
    @Value("${com.didispace.title}")
    private String title;
}

這個(gè)注解可以說非常的好用!但是為什么不推薦大家使用它呢?核心原因是:當(dāng)我們使用@Value來直接提取配置信息使用的時(shí)候,會(huì)產(chǎn)生配置信息加載的碎片化。比如,同一個(gè)配置,可能背多個(gè)Service或者Controller使用,當(dāng)我們?cè)僖薷乃臅r(shí)候,就會(huì)存在一個(gè)遺漏的風(fēng)險(xiǎn)。我們無法方便的維護(hù)這些配置加載而導(dǎo)致一些問題。

那么,如果不使用@Value,我們應(yīng)該用什么來替代呢?

我比較推薦的就是使用@ConfigurationProperties來分類和加載各種配置信息,比如,我要加載關(guān)于com.didispace的相關(guān)配置時(shí)候,就寫一個(gè)這樣的實(shí)現(xiàn):

@Configuration
@ConfigurationProperties(prefix = "com.didispace")
public class DidispaceProperties {
    private String title;
}

這個(gè)DidispaceProperties就會(huì)加載com.didispace開頭的配置。其他Service或者Controller要使用這些配置的時(shí)候,就通過注入DidispaceProperties就也可以了。如果要修改配置相關(guān)的邏輯,也只需要修改DidispaceProperties中的內(nèi)容即可,而不是到處找@Value的配置。

另外,在這里,其實(shí)還可以增加對(duì)配置的校驗(yàn),主要在pom.xml中引入spring-boot-starter-validation模塊。然后修改配置類,增加@Validated注解和具體校驗(yàn)注解,比如:

@Validated
@Configuration
@ConfigurationProperties(prefix = "com.didispace")
public class DidispaceProperties {

  @NotNull
  private String title;

}

這就輕松實(shí)現(xiàn)配置的校驗(yàn)了,是不是很方便呢?

到此這篇關(guān)于為什么不推薦在Spring Boot中使用@Value加載配置的文章就介紹到這了,更多相關(guān)Spring Boot使用@Value加載配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mybatis-Plus 自動(dòng)填充失效問題解決

    Mybatis-Plus 自動(dòng)填充失效問題解決

    在使用MyBatis-Plus時(shí),自動(dòng)填充功能可能會(huì)失效,這通常與版本和配置有關(guān),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • java迭代器移除元素出現(xiàn)并發(fā)修改異常的原因及解決

    java迭代器移除元素出現(xiàn)并發(fā)修改異常的原因及解決

    這篇文章主要介紹了java迭代器移除元素出現(xiàn)并發(fā)修改異常的原因及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • MyBatis使用<foreach>標(biāo)簽like查詢報(bào)錯(cuò)解決問題

    MyBatis使用<foreach>標(biāo)簽like查詢報(bào)錯(cuò)解決問題

    這篇文章主要介紹了MyBatis使用<foreach>標(biāo)簽like查詢報(bào)錯(cuò)解決問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • springboot返回時(shí)間戳問題

    springboot返回時(shí)間戳問題

    在SpringBoot中配置時(shí)間格式,可以通過配置類或配置文件實(shí)現(xiàn),若需處理日期,可直接在配置文件中設(shè)置,存儲(chǔ)時(shí)間戳毫秒值時(shí),建立數(shù)據(jù)庫字段精度為3,確保時(shí)間精確,這些個(gè)人經(jīng)驗(yàn)供參考
    2024-09-09
  • Java實(shí)現(xiàn)文件或文件夾的復(fù)制到指定目錄實(shí)例

    Java實(shí)現(xiàn)文件或文件夾的復(fù)制到指定目錄實(shí)例

    本篇文章主要介紹了Java實(shí)現(xiàn)文件或文件夾的復(fù)制到指定目錄實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • JAVA實(shí)現(xiàn)FTP斷點(diǎn)上傳的方法

    JAVA實(shí)現(xiàn)FTP斷點(diǎn)上傳的方法

    這篇文章主要介紹了JAVA實(shí)現(xiàn)FTP斷點(diǎn)上傳的方法,涉及java使用FTP實(shí)現(xiàn)文件傳輸?shù)南嚓P(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • Spring?Boot的無縫銜接實(shí)踐案例

    Spring?Boot的無縫銜接實(shí)踐案例

    在快速迭代的軟件開發(fā)環(huán)境中,無縫銜接是提升開發(fā)效率、降低維護(hù)成本、增強(qiáng)系統(tǒng)穩(wěn)定性的關(guān)鍵,本文將深入解析Spring?Boot無縫銜接的幾大優(yōu)勢(shì),并通過實(shí)際案例和深入分析,展示這些優(yōu)勢(shì)如何在項(xiàng)目中發(fā)揮作用
    2024-08-08
  • 使用SpringBoot中web項(xiàng)目推薦目錄結(jié)構(gòu)的問題

    使用SpringBoot中web項(xiàng)目推薦目錄結(jié)構(gòu)的問題

    這篇文章主要介紹了SpringBoot中web項(xiàng)目推薦目錄結(jié)構(gòu)的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-01-01
  • Java之Spring簡(jiǎn)單的讀取和存儲(chǔ)對(duì)象

    Java之Spring簡(jiǎn)單的讀取和存儲(chǔ)對(duì)象

    這篇文章主要介紹了Spring的讀取和存儲(chǔ)對(duì)象,獲取 bean 對(duì)象也叫做對(duì)象裝配,是把對(duì)象取出來放到某個(gè)類中,有時(shí)候也叫對(duì)象注?,想進(jìn)一步了解的同學(xué)可以參考本文
    2023-04-04
  • Java Stream中的Spliterator類概念及原理解析

    Java Stream中的Spliterator類概念及原理解析

    Spliterator是Java 8引入的一個(gè)接口,位于java.util包中,它結(jié)合了迭代器(Iterator)的遍歷能力和分割器(Splitter)的分割能力,本文將詳細(xì)介紹Spliterator的概念、原理、作用、類中定義的關(guān)鍵方法,以及它在Stream API中的實(shí)際應(yīng)用,感興趣的朋友一起看看吧
    2024-08-08

最新評(píng)論

津市市| 铜鼓县| 凤庆县| 荥经县| 比如县| 长寿区| 大新县| 牟定县| 无为县| 唐河县| 永州市| 黄山市| 黑龙江省| 揭阳市| 郸城县| 铜川市| 临湘市| 洮南市| 中牟县| 广灵县| 绍兴市| 永济市| 黑河市| 上犹县| 北宁市| 临清市| 浪卡子县| 金沙县| 海淀区| 金华市| 通榆县| 乐昌市| 贡觉县| 岗巴县| 登封市| 连州市| 浏阳市| 扶余县| 北海市| 渝北区| 淮安市|