springboot profiles

Posted MrQin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot profiles相关的知识,希望对你有一定的参考价值。

Spring Profile 提供隔离部分配置的方法 并使它们仅仅在某些环境生效。通过@Component或@Configuration 配合 @Profile来实现。

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

    // ...

}

通常,你是通过设置环境中的spring.profiles.active属性来指定那些profiles生效。比如在application.properties中设置

spring.profiles.active=dev,hsqldb

或通过命令行设置等。

1、添加active profile

当多个命令同时设置spring.profiles.active属性值的时候,高权限的命令会获胜,也就是说,application.properties中对spring.profiles.active的设置会覆盖默认的,而命令行的会覆盖application.properties中的。

但通常对于profiles不是替换他们而是添加他们,spring.profiles.include属性作用就是添加profiles。SpringApplication同时提供了方法添加profiles,详情见setAdditionalProfiles()方法。

2、程序设定profiles

在项目启动之前执行SpringApplication.setAdditionalProfiles(…?),也可以通过ConfigurableEnvironment接口激活profiles。

3、Profiles配置文件

配置文件application.properties(或application.yml)和参照了@ConfigurationProperties注解的文件都被加载。(后面会详细介绍)

以上是关于springboot profiles的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot启动报错“Consider defining a bean of type ‘xxx.mapper.UserMapper‘ in your configuration.“(代码片段

全栈编程系列SpringBoot整合Shiro(含KickoutSessionControlFilter并发在线人数控制以及不生效问题配置启动异常No SecurityManager...)(代码片段

springboot配置多个yml文件

springboot profiles

SpringBoot ------------spring.profiles.active 分区配置

springboot的profile配置