欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springcloud本地配置優(yōu)先方式

 更新時(shí)間:2024年07月15日 09:08:55   作者:火冰鬼舞  
這篇文章主要介紹了springcloud本地配置優(yōu)先方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

springcloud本地配置優(yōu)先

如果我們的項(xiàng)目使用了遠(yuǎn)程配置中心,就會(huì)使用遠(yuǎn)程配置優(yōu)先??稍趯?shí)際開(kāi)發(fā)中,通常我們需要本地的部分配置優(yōu)先于遠(yuǎn)程配置,方便開(kāi)發(fā)調(diào)試。

spring cloud為我們提供了相關(guān)的配置:

使用propertise配置

1.不適用遠(yuǎn)程配置

默認(rèn)值是true,不要調(diào)整成false, 可以不配置,使用默認(rèn)即可

# 如果想要遠(yuǎn)程配置優(yōu)先級(jí)高,那么 allow-override 設(shè)置為 false,如果想要本地配置優(yōu)先級(jí)高那么 allow-override 設(shè)置為 true
spring.cloud.config.allow-override=true

2.本地文件優(yōu)先

# 如果本地配置優(yōu)先級(jí)高,那么 override-none 設(shè)置為 true,包括系統(tǒng)環(huán)境變量、本地配置文件等配置
spring.cloud.config.override-none=true

3.遠(yuǎn)程配置只覆蓋本地配置文件

# 只有系統(tǒng)環(huán)境變量或者系統(tǒng)屬性才能覆蓋遠(yuǎn)程配置文件的配置,本地配置文件中配置優(yōu)先級(jí)低于遠(yuǎn)程配置;注意本地配置文件不是系統(tǒng)屬性      
spring.cloud.config.override-system-properties=false

2或3任意配置即可,只會(huì)生效一種。

使用yml配置同properties一樣:

spring:
  cloud:
    config:
      # 如果本地配置優(yōu)先級(jí)高,那么 override-none 設(shè)置為 true,包括系統(tǒng)環(huán)境變量、本地配置文件等配置
      override-none: true
      # 如果想要遠(yuǎn)程配置優(yōu)先級(jí)高,那么 allow-override 設(shè)置為 false,如果想要本地配置優(yōu)先級(jí)高那么 allow-override 設(shè)置為 true
      allow-override: true
      # 只有系統(tǒng)環(huán)境變量或者系統(tǒng)屬性才能覆蓋遠(yuǎn)程配置文件的配置,本地配置文件中配置優(yōu)先級(jí)低于遠(yuǎn)程配置;注意本地配置文件不是系統(tǒng)屬性
      override-system-properties: false

配置到這里,可能就會(huì)去嘗試。不過(guò)當(dāng)你配置完成后會(huì)發(fā)覺(jué),好像配置沒(méi)有生效。

不要著急,我們繼續(xù)分析。

上源碼:

org.springframework.cloud.bootstrap.config.PropertySourceBootstrapConfiguration#insertPropertySources

我們反向看一下:

  • 通過(guò)remoteProperties對(duì)象的屬性判斷的
  • remoteProperties的屬性是通過(guò)spring.cloud.config的鍵值對(duì)復(fù)制的
  • 鍵值對(duì)是通過(guò)環(huán)境變量中incoming獲取的
  • incoming是new出來(lái)的也就是說(shuō)沒(méi)有值
  • incoming的值是通過(guò)reversedComposite的的值排序后添每次加頭部進(jìn)去的,也就是和reversedComposite原始的順序是一致的,propertySources中已有值,需要使用addFirst把遠(yuǎn)程配置加載到前列,就需要先倒序.
  • 查看composite就知道了,最終的參數(shù)是從哪里獲取的。

從結(jié)果發(fā)現(xiàn),composite中的配置全部是來(lái)自與遠(yuǎn)程配置。

所以如果你需要本地配置優(yōu)先,需要把上面的配置放在遠(yuǎn)程配置中的配置文件中才可以生效

同時(shí)需要注意文件順序:

  • {application.name}-{profiles}.后綴
  • {application.name}.后綴
  • {application.name}
  • spring.cloud.nacos.config.shared-configs中的公共配置

快去試一下效果吧??!~~~~~~~~~~~~~~~~~~~~

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis逆向?程的生成過(guò)程

    MyBatis逆向?程的生成過(guò)程

    MyBatis官方為我們提供了一個(gè)逆向工程,通過(guò)這個(gè)逆向工程,只要建立好數(shù)據(jù)表,那么MyBatis就會(huì)根據(jù)這個(gè)表自動(dòng)生成pojo類、dao接口、sql映射文件
    2023-02-02
  • springboot自定義攔截器簡(jiǎn)單使用及舉例

    springboot自定義攔截器簡(jiǎn)單使用及舉例

    Spring Boot攔截器是AOP的一種實(shí)現(xiàn),專門(mén)攔截對(duì)控制層的請(qǐng)求,主要應(yīng)用于判斷用戶權(quán)限,攔截webSocket請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于springboot自定義攔截器簡(jiǎn)單使用及舉例的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • IntelliJ IDEA中Project與Module的概念以及區(qū)別

    IntelliJ IDEA中Project與Module的概念以及區(qū)別

    這篇文章主要給大家介紹了關(guān)于IntelliJ IDEA中Project與Module的概念以及區(qū)別的相關(guān)資料,文中通過(guò)實(shí)例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 使用SpringBoot+AOP實(shí)現(xiàn)可插拔式日志的示例代碼

    使用SpringBoot+AOP實(shí)現(xiàn)可插拔式日志的示例代碼

    這篇文章主要介紹了使用SpringBoot+AOP實(shí)現(xiàn)可插拔式日志的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Java?try?catch語(yǔ)句異常處理詳解

    Java?try?catch語(yǔ)句異常處理詳解

    這篇文章主要給大家介紹了關(guān)于Java?try?catch語(yǔ)句異常處理的相關(guān)資料,Java中的try-catch用于捕獲和處理異常,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • java中out.print和out.write的方法

    java中out.print和out.write的方法

    本文用一個(gè)小例子說(shuō)明java out.print和out.write的方法,大家參考使用吧
    2013-11-11
  • 關(guān)于spring?boot使用?jdbc+mysql?連接的問(wèn)題

    關(guān)于spring?boot使用?jdbc+mysql?連接的問(wèn)題

    這篇文章主要介紹了spring?boot使用?jdbc+mysql?連接,在這里mysql?8.x版本驅(qū)動(dòng)包,要使用?com.mysql.cj.jdbc.Driver作為驅(qū)動(dòng)類,文中給大家詳細(xì)介紹,需要的朋友可以參考下
    2022-03-03
  • mybatis 如何通過(guò)resultMap 返回long

    mybatis 如何通過(guò)resultMap 返回long

    這篇文章主要介紹了mybatis 如何通過(guò)resultMap 返回long的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringTask實(shí)現(xiàn)定時(shí)任務(wù)方法講解

    SpringTask實(shí)現(xiàn)定時(shí)任務(wù)方法講解

    通過(guò)重寫(xiě)Schedu lingConfigurer方法實(shí)現(xiàn)對(duì)定時(shí)任務(wù)的操作,單次執(zhí)行、停止、啟動(dòng)三個(gè)主要的基本功能,動(dòng)態(tài)的從數(shù)據(jù)庫(kù)中獲取配置的定時(shí)任務(wù)cron信息,通過(guò)反射的方式靈活定位到具體的類與方法中
    2023-02-02
  • 詳解Java中的內(nèi)存屏障

    詳解Java中的內(nèi)存屏障

    這篇文章主要介紹了Java中的內(nèi)存屏障的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-05-05

最新評(píng)論