您要在哪里存儲配置服務(wù)器的配置數(shù)據(jù)?管理此行為的策略是EnvironmentRepository谋作,服務(wù)于Environment對象毁靶。此Environment是Spring Environment(包括propertySources作為主要功能)的域的淺層副本鞭铆。Environment資源由三個變量參數(shù)化:
{application}映射到客戶端的“spring.application.name”;
{profile}映射到客戶端上的“spring.profiles.active”(逗號分隔列表); 和
{label}這是一個服務(wù)器端功能,標(biāo)記“版本”的配置文件集辨赐。
存儲庫實(shí)現(xiàn)通常表現(xiàn)得像一個Spring Boot應(yīng)用程序從“spring.config.name”等于{application}參數(shù)加載配置文件,“spring.profiles.active”等于{profiles}參數(shù)京办。配置文件的優(yōu)先級規(guī)則也與常規(guī)啟動應(yīng)用程序相同:活動配置文件優(yōu)先于默認(rèn)配置掀序,如果有多個配置文件,則最后一個獲勝(例如向Map添加條目)惭婿。
示例:客戶端應(yīng)用程序具有此引導(dǎo)配置:
bootstrap.yml
spring:
application:
name: foo
profiles:
active: dev,mysql
(通常使用Spring Boot應(yīng)用程序不恭,這些屬性也可以設(shè)置為環(huán)境變量或命令行參數(shù))。
如果存儲庫是基于文件的财饥,則服務(wù)器將從application.yml創(chuàng)建Environment(在所有客戶端之間共享)换吧,foo.yml(以foo.yml優(yōu)先))。如果YAML文件中有文件指向Spring配置文件钥星,那么應(yīng)用的優(yōu)先級更高(按照列出的配置文件的順序)沾瓦,并且如果存在特定于配置文件的YAML(或?qū)傩裕┪募敲催@些文件也應(yīng)用于優(yōu)先級高于默認(rèn)值谦炒。較高優(yōu)先級轉(zhuǎn)換為Environment之前列出的PropertySource贯莺。(這些規(guī)則與獨(dú)立的Spring Boot應(yīng)用程序相同。)完整項(xiàng)目的源碼來源 技術(shù)支持1791743380