Spring Cloud 2.2.2 源码之三十nacos客户端获取配置原理五

PropertySourceBootstrapConfiguration的initialize尾巴

还有个尾巴我就不多说了,就是一些处理,将结果放进环境,然后重新初始化等。

	if (!empty) {//如果结果不为空
			MutablePropertySources propertySources = environment.getPropertySources();
			String logConfig = environment.resolvePlaceholders("${logging.config:}");
			LogFile logFile = LogFile.get(environment);
			for (PropertySource<?> p : environment.getPropertySources()) {
				if (p.getName().startsWith(BOOTSTRAP_PROPERTY_SOURCE_NAME)) {
					propertySources.remove(p.getName());//删除bootstrapProperties,因为bootstrap已经处理完了
				}
			}
			//将结果放入环境的MutablePropertySources中
			insertPropertySources(propertySources, composite);
			//重新初始化log系统
			reinitializeLoggingSystem(environment, logConfig, logFile);
			//设置log级别
			setLogLevels(applicationContext, environment);
			//处理包含的环境配置
			handleIncludedProfiles(environment);
		}

NacosConfigAutoConfiguration

NacosConfigProperties从老上下文中获取

BootstrapApplicationListener中创建的新上下文中的单例:
在这里插入图片描述
这里的NacosConfigProperties是从新上下文里获取来的,不是新创建的。
在这里插入图片描述
可以看到出现在老上下文中了:
在这里插入图片描述
老上下文的parent就是新上下文,有兴趣的可以看里面的信息。
在这里插入图片描述

其他重新创建

其实就是这些里面的。
在这里插入图片描述

我给个图吧:
在这里插入图片描述

下篇再继续分析这些类干嘛的。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值