Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

基本流程图

Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

加载环境配置

如果有环境配置会进行处理,然后会加到profiles里,进行环境配置的加载。其实就是这个循环,只要里面还有机会继续加载,所以就不多说了。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四
要注意,这里面可能还有过滤条件要处理。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四
根据profile不同的,有不同的过滤条件。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

addLoadedPropertySources添加到环境属性源

Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四
环境配置有限放前面。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

applyActiveProfiles添加**配置

添加到环境的**配置中。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

多**环境

其实你可以配多个**环境,属性绑定的时候规则还挺复杂的,默认是放后面的环境属性优先,但是属性缺失的话还会去前面的找,有兴趣的自己可以研究下,不过还是别这样做,自己都搞晕。
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四
Spring Boot 2.2.6 源码之旅五十三ConfigFileApplicationListener配置文件加载原理四

好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵。