SpringBoot项目的配置文件支持两种四个:
bootstrap和application。
YML文件两个:bootstrap.yml,application.yml
属性文件两个:bootstrap.properties,application.properties
配置文件优先级
SpringBoot支持同时使用,其加载的顺序为:
bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml
从高到低。
它们的区别:
- 1、加载顺序区别:bootstrap配置文件是比application配置文件优先加载。因为bootstrap是由spring父上下文加载,而application是由子上下文加载。
- 2、优先级区别:bootstrap加载的配置信息是不能被application的相同配置覆盖的,如果两个配置文件同时存在,以bootstrap为主。
- 应用场景区别:
bootstrap常见应用场景:
1)配置一些固定的,不能被覆盖的属性,用于一些系统级别的参数配置。本地的配置文件是默认不能覆盖远程的配置的
2)一些需要加密/解密的场景
3)当你使用了Spring Cloud Config配置中心时,这时需要在boostrap配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息。
application常见应用场景:
1)常用于SpringBoot项目的自动化配置
2)用于一些应用级别的参数配置
在大部分情况下不用区分这两种情况使用application即可。