网站做任务给钱的,国美在线网站建设,php网站迁移,新乡百度网站优化排名关键词
prepareEnvironmentBootstrapApplicationListenerBootStrap Context#xff08;启动应用上下文#xff09;Environment中bootstrap属性
面试回答
引入SpringCloud相关组件后#xff0c;均会引入一个spring-cloud-context的依赖包#xff0c;这个项目的META-INF/s…
关键词
prepareEnvironmentBootstrapApplicationListenerBootStrap Context启动应用上下文Environment中bootstrap属性
面试回答
引入SpringCloud相关组件后均会引入一个spring-cloud-context的依赖包这个项目的META-INF/spring.factories中会引入一个监听器(BootstrapApplicationListener)在SpringBoot主应用上下文启动流程中会有一个prepareEnvironment阶段该阶段完成后,会发布事件触发BootstrapApplicationListener监听逻辑BootstrapApplicationListener会触发一个新的SpringBoot应用上下文即Bootstrap Context的启动流程最终Bootstrap Context将会作为SpringBoot主应用上下文的父应用上下文 BootstrapApplicationListener发起Bootstrap Context启动流程之前会向Environment中放置一个bootstrap属性。所以当Bootstrap Context在走SpringBoot启动流程时**虽然也会走到prepareEnvironment阶段并触发BootstrapApplicationListener的监听逻辑但是此时BootstrapApplicationListener由于判断到Environment中存在bootstrap属性**就会跳过剩余逻辑。