SpringCloud Bootstrap應(yīng)用程序上下文

2023-06-06 17:07 更新

Spring Cloud應(yīng)用程序通過(guò)創(chuàng)建“ bootstrap ”上下文來(lái)運(yùn)行,該上下文是主應(yīng)用程序的父上下文。它負(fù)責(zé)從外部源加載配置屬性,并負(fù)責(zé)解密本地外部配置文件中的屬性。這兩個(gè)上下文共享一個(gè)?Environment?,它是任何Spring應(yīng)用程序的外部屬性的來(lái)源。默認(rèn)情況下,引導(dǎo)程序?qū)傩裕ú皇?bootstrap.properties?,而是引導(dǎo)程序階段加載的屬性)具有較高的優(yōu)先級(jí),因此它們不能被本地配置覆蓋。

引導(dǎo)上下文使用與主應(yīng)用程序上下文不同的約定來(lái)定位外部配置??梢允褂?bootstrap.yml?來(lái)代替?application.yml?(或?.properties?),而將引導(dǎo)程序和外部環(huán)境的外部配置很好地分開(kāi)。以下清單顯示了一個(gè)示例:

bootstrap.yml

spring:
  application:
    name: foo
  cloud:
    config:
      uri: ${SPRING_CONFIG_URI:http://localhost:8888}

如果您的應(yīng)用程序需要來(lái)自服務(wù)器的任何特定于應(yīng)用程序的配置,則最好設(shè)置?spring.application.name?(在?bootstrap.yml?或?application.yml?中)。為了將屬性?spring.application.name?用作應(yīng)用程序的上下文ID,必須在?bootstrap.[properties | yml]?中進(jìn)行設(shè)置。

如果要檢索特定的配置文件配置,還應(yīng)該在?bootstrap.[properties | yml]?中設(shè)置?spring.profiles.active?。

您可以通過(guò)設(shè)置?spring.cloud.bootstrap.enabled=false?來(lái)完全禁用引導(dǎo)過(guò)程(例如,在系統(tǒng)屬性中)。


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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)