屬性覆寫

Config 伺服器具有「覆寫」功能,可讓操作員為所有應用程式提供組態屬性。覆寫的屬性無法透過一般的 Spring Boot Hook 被應用程式意外變更。若要宣告覆寫,請將名稱-值配對的 Map 新增至 `spring.cloud.config.server.overrides`,如下列範例所示

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

先前的範例會導致所有作為 Config 用戶端的應用程式讀取 `foo=bar`,而與它們自身的組態無關。

組態系統無法強制應用程式以任何特定方式使用組態資料。因此,覆寫是不可強制執行的。然而,它們確實為 Spring Cloud Config 用戶端提供了有用的預設行為。
通常,可以使用反斜線 (`\`) 逸出 Spring 環境佔位符 `${}` (並在用戶端上解析),以逸出 `$` 或 `{`。例如,`\${app.foo:bar}` 會解析為 `bar`,除非應用程式提供自己的 `app.foo`。
在 YAML 中,您不需要逸出反斜線本身。但是,在 properties 檔案中,當您在伺服器上設定覆寫時,您確實需要逸出反斜線。

您可以變更用戶端中所有覆寫的優先順序,使其更像預設值,讓應用程式在環境變數或系統屬性中提供自己的值,方法是在遠端儲存庫中設定 `spring.cloud.config.overrideNone=true` 標誌 (預設為 false)。