Spring Boot 2.0.0參考手冊_中文版_Part IV_25

文章作者:Tyan
博客:noahsnail.com ?|? CSDN ?|? 簡書

25. Profiles

Spring Profiles提供了一種隔離部分應(yīng)用配置的方式,并讓這些配置只在特定的環(huán)境生效。任何帶有@Profile標(biāo)記的@Component@Configuration在加載時都會受限制:

@Configuration
@Profile("production")
public class ProductionConfiguration {

    // ...

}

以正常的Spring方式,你可以使用spring.profiles.active Environment屬性來指定激活哪一個profiles。你可以在任何常見的方式指定這個屬性,例如你可以在你的application.properties中包含它:

spring.profiles.active=dev,hsqldb

或在命令行用--spring.profiles.active=dev,hsqldb指定。

25.1 添加激活的profiles

spring.profiles.active屬性與其它的屬性一樣遵循同樣的排序規(guī)則,最高的PropertySource優(yōu)先。這意味著你可以在application.properties指定激活的profiles,然后用命令行轉(zhuǎn)換替代它們。

例如,當(dāng)一個應(yīng)用具有以下屬性且運(yùn)行時使用--spring.profiles.active=prod轉(zhuǎn)換,proddbprodmq profiles也將被激活:

---
my.property: fromyamlfile
---
spring.profiles: prod
spring.profiles.include:
  - proddb
  - prodmq

記住可以在YAML文檔中定義spring.profiles來決定在配置中包含特定的文檔。更多細(xì)節(jié)請看70.7小節(jié),“根據(jù)環(huán)境更改配置”。

25.2 以編程方式設(shè)置profiles

你可以在你的應(yīng)用運(yùn)行之前以編程的方式調(diào)用SpringApplication.setAdditionalProfiles(…?)來設(shè)置激活的profiles。也可以使用Spring的ConfigurableEnvironment接口來激活profiles。

25.3 指定profile的配置文件

application.properties(或application.yml)和通過@ConfigurationProperties引用的文件的特定profiles變種都被當(dāng)做文件進(jìn)行加載。更多細(xì)節(jié)請看24.4小節(jié),“Profile-specific properties”。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容