看博客的时候发现大家都会有bootstrap.yaml和application.yaml这两个配置文件,对这个地方有点迷惑,然后就专门查了一下这两个文件的加载顺序以及各自的作用。
bootstrap.yaml
用于程序引导时运行,应用于更早期配置信息的读取,比如可以用来配置application.yaml中使用到的参数,可以理解为系统级别的一些参数配置,这些参数一般是不会变动的。
application.yaml
应用程序中特有的配置信息,可以用来装配后续各个模块中需使用的公共参数。
典型的应用场景
- 当使用Spring Cloud Config Server的时候,应该在bootstrap.yml中指定spring.application.name和spring.cloud.server.git.uri
- 一些加密/解密信息
在结合config server使用的时候,bootstrap.yaml更多的是配置一些不经常变化甚至不变化的属性。application.yaml属性文件可更灵活的配置一些属性
加载顺序
一般的加载顺序是
- bootstrap.yaml
- application.yaml
- application-dev.yaml
如果在这些配置文件中存在同名的属性的话,后加载的值会覆盖先加载的值。