SpringCloud Property覆蓋

2023-07-31 09:22 更新

Config Server具有“ 替代 ”功能,使操作員可以為所有應(yīng)用程序提供配置屬性。應(yīng)用程序使用常規(guī)的Spring Boot鉤子不會(huì)意外更改重寫(xiě)的屬性。要聲明覆蓋,請(qǐng)將名稱/值對(duì)的映射添加到?spring.cloud.config.server.overrides?,如以下示例所示:

spring:
  cloud:
    config:
      server:
        overrides:
          foo: bar

前面的示例使作為配置客戶端的所有應(yīng)用程序讀取?foo=bar?,而與它們自己的配置無(wú)關(guān)。

 配置系統(tǒng)不能強(qiáng)制應(yīng)用程序以任何特定方式使用配置數(shù)據(jù)。因此,覆蓋無(wú)法執(zhí)行。但是,它們確實(shí)為Spring Cloud Config客戶端提供了有用的默認(rèn)行為。

 通常,可以使用反斜杠(\)來(lái)轉(zhuǎn)義${,以逃避(并在客戶端上解析)具有${}的Spring環(huán)境占位符。例如,除非應(yīng)用程序提供自己的app.foo,否則\${app.foo:bar}解析為bar

 在YAML中,您不需要轉(zhuǎn)義反斜杠本身。但是,在屬性文件中,在服務(wù)器上配置替代時(shí),確實(shí)需要轉(zhuǎn)義反斜杠。

您可以通過(guò)在遠(yuǎn)程存儲(chǔ)庫(kù)中設(shè)置?spring.cloud.config.overrideNone=true?標(biāo)志(默認(rèn)為false),使客戶端中所有替代的優(yōu)先級(jí)更像默認(rèn)值,讓?xiě)?yīng)用程序在環(huán)境變量或系統(tǒng)屬性中提供自己的值。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)