Spring Boot2(012):Profiles
2021-04-09 10:25
标签:添加 blank hellip ase ext change 包含 size rom Spring Boot2系列文章可以通过这里进行回顾:SpringBoot2(001):入门介绍、官网参考和博客汇总 本文主要针对 SpringBoot 的 Profiles 进行介绍,实际上主要是说明如何激活某个 profiles 、甚至添加激活其他更多的 profiles 等,主要参考官方文档: 25. Profiles ,目录结构如下: Spring Profiles 配置文件提供了用来隔离应用程序部分配置的方法,并使其仅在某些特定环境中可用。任何使用 @Component 或 @Configuration 注解的 bean 都可以标记为 @Profile 来进行加载时的限制。如下例子: 开发者可以通过 Environment 环境变量属性 spring.profiles.active 来指定激活哪个 profiles 。开发者可以使用本章前面描述的任何方式指定该属性。例如,可以在 application.properties 中指定: 还可以通过如下命令行参数来指定: spring.profiles.active 属性和其他属性一样,也遵循配置的优先级顺序,由最高优先级的 PropertySource 确认。这意味着开发者可以在 application.properties 进行指定,然后在命令行参数中进行替换。 有时候,在一些场景中,直接在 active profiles 中增加 profile-specific properties 或许比直接替换会更有用。 spring.profiles.include 属性可以用于无条件地增加 active profiles 。SpringApplication 入口点还有一个用于设置附加 profiles 的 Java API (也就是说,在 spring.profiles.active 属性激活的那些 profiles 之上)。参考 SpringApplication 的 setAdditionalProfiles() 方法。 例如,当一个有如下属性配置的应用通过参数 --spring.profiles.active=prod 进行运行时,proddb 和 prodmq 都会被激活: 注:需要注意 spring.profiles 属性可以在 YAML 文档中定义,以确定该特定配置文档何时被包含在配置中。详情参考:Section 77.7, “Change Configuration Depending on the Environment” 开发者可以在应用运行之前通过编程式调用 SpringApplication.setAdditionalProfiles(…?) 的方式设置激活的 profiles (active profiles)。另外通过 Spring 的 ConfigurableEnvironment 接口来激活 profiles 也是可行的。 application.properties (或者 application.yml) 和通过 @ConfigurationProperties 引用到的文件的配置属性都会被当作文件进行加载。详情参考:Section 24.4, “Profile-specific Properties” 或者参考笔者的上一篇博客中对此的简要介绍:特定配置属性 Profile-specific Properties Spring Boot2(012):Profiles 标签:添加 blank hellip ase ext change 包含 size rom 原文地址:https://www.cnblogs.com/wpbxin/p/13375636.html
@Configuration
@Profile("production")
public class ProductionConfiguration {
// ...
}
spring.profiles.active=dev,hsqldb
--spring.profiles.active=dev,hsqldb
1、Adding Active Profiles
---
my.property: fromyamlfile
---
spring.profiles: prod
spring.profiles.include:
- proddb
- prodmq
2、Programmatically Setting Profiles(编程式设置 Profiles)
3、Profile-specific Configuration Files
4、参考
文章标题:Spring Boot2(012):Profiles
文章链接:http://soscw.com/index.php/essay/73288.html