springboot2——10高级特性

1 Profile环境功能

Profile功能:为了方便多环境适配,springboot简化了profile功能,使用profile可以实现快速的切换环境。

1.1 profile使用

(1)在resources文件夹下创建多个application-xxx.yaml配置文件,分别代表不同的生产、测试等环境。在这里插入图片描述
application-test.yml:测试环境的配置文件

name: test-张三

application-produce.yml:生产环境的配置文件

name: produce-张三

(2)只有默认配置文件(application.yaml或application.properties)会自动生效,其他环境的配置文件想要生效,需要在默认配置文件中激活。另外,如果已经激活的其他环境的配置文件和默认配置文件冲突,以已经激活的其他环境的配置文件为准。

application.yml: 默认配置文件

spring:
  profiles:
    active: produce #表示激活生产环境的配置文件

除了在默认配置文件中激活其他环境的配置文件,还可以在命令行中激活,例如 java -jar xxx.jar --spring.profiles.active=test,在命令行中可以修改配置文件的任意值且以命令行优先
(3)还可以使用@Profile(“xxx”)注解标注在类、方法上完成条件装配,表示在指定环境下该类、方法下的注解才会生效
例如@Profile(“produce”)表示是produce环境时下面的才生效。

@Profile("produce")
@ConfigurationProperties("person")
@Component
@Data
public class Boss implements Person {
	String name;
	Integer age;
}

1.2 profile规则

不带环境标识的配置文件(application.yml、application.properties)任何时候都会加载;
在不带环境标识的配置文件中指定要激活的环境配置文件;

2 外部化配置

通过外部的配置资源实现与代码的相互配合,来避免硬编码

2.1 外部配置源

常用外部配置源有:properties文件、yaml文件、环境变量、命令行参数。

2.2 配置文件查找位置

配置文件查找位置:后面的配置文件可以覆盖前面的同名配置项

  • classpath根路径
  • classpath根路径下的config目录
  • jar包所在的目录
  • jar包所在目录下的config目录
  • config目录的直接子目录
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值