jar配置文件加载顺序:
springboot 启动会扫描以下位置的application.properties/application.yml文件作为Springboot的默认配置文件:
以下是优先级从高到低的顺序:
- file:./config/
- file: ./
- classpath: /config/
- classpath: /
note: 高优先级覆盖低优先级,四个位置的文件全部会加载,形成互补配置。另外我们还可以通过命令行参数spring.config.location来改变默认配置文件位置。
外部配置加载顺序:
SpringBoot也可以从以下位置加载配置; 优先级从高到低;高优先级的配置覆盖低优先级的配置,所有的配置会 形成互补配置
- 命令行参数 所有的配置都可以在命令行上进行指定 java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --server.port=8087 --server.context-path=/abc 多个配置用空格分开; --配置项=值
- 来自java:comp/env的JNDI属性
- Java系统属性(System.getProperties())
- 操作系统环境变量
- RandomValuePropertySource配置的random.*属性值
- jar包外部的application-{profile}.properties或application.yml(带spring.profile)配置文件
- jar包内部的application-{profile}.properties或application.yml(带spring.profile)配置文件 再来加载不带profile