Spring boot外部配置加载顺序

外部配置加载顺序

Spring boot
可以从以下位置加载配置

优先级从高到低
高优先级的配置,覆盖低优先级的配置
所有的配置,会形成互补配置

官网,给出了17个位置
Spring boot外部配置加载顺序_第1张图片
这里,只介绍常用的11个位置

1、命令行参数
所有的配置,都可以在命令行上进行指定
多个配置用空格分开
–配置项=值
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar –server.port=8087 –server.context-path=/abc

2、来自java:comp/env的JNDI属性

3、Java系统属性System.getProperties()

4、操作系统环境变量

5、RandomValuePropertySource配置的random.*属性值

Jar包寻找顺序

由jar包外,向jar包内进行寻找
Spring boot外部配置加载顺序_第2张图片

优先加载带profile

6、jar包外部的application-{profile}.properties
或者application.yml,带spring.profile配置文件

7、jar包内部的application-{profile}.properties
或者application.yml,带spring.profile配置文件

再加载不带profile

8、jar包外部的application.properties
或者application.yml,不带spring.profile配置文件

9、jar包内部的application.properties
或者application.yml,不带spring.profile配置文件

你可能感兴趣的:(————Spring,Boot)