首页 > 其他 > 详细

SprigBoot核心技术

时间:2019-04-28 00:38:15      阅读:130      评论:0      收藏:0      [点我收藏+]

启动原理 运行流程 自动配置原理

 

一、启动原理

 

 

SpringApplication.run(主程序类)
– new SpringApplication(主程序类)
• 判断是否web应用
• 加载并保存所有ApplicationContextInitializer(META-INF/spring.factories),
• 加载并保存所有ApplicationListener
• 获取到主程序类
– run()
• 回调所有的SpringApplicationRunListener(META-INF/spring.factories)的starting
• 获取ApplicationArguments
• 准备环境&回调所有监听器( SpringApplicationRunListener )的environmentPrepared
• 打印banner信息
• 创建ioc容器对象(
– AnnotationConfigEmbeddedWebApplicationContext(web环境容器)
– AnnotationConfigApplicationContext(普通环境容器)

– run()
• 准备环境
– 执行ApplicationContextInitializer. initialize()
– 监听器SpringApplicationRunListener回调contextPrepared
– 加载主配置类定义信息
– 监听器SpringApplicationRunListener回调contextLoaded
• 刷新启动IOC容器;
– 扫描加载所有容器中的组件
– 包括从META-INF/spring.factories中获取的所有EnableAutoConfiguration组件
• 回调容器中所有的ApplicationRunner、CommandLineRunner的run方法
• 监听器SpringApplicationRunListener回调finished

 

启动流程:

   1、 创建SpringApplication对象,加载并保存所有ApplicationContextInitializer(META-INF/spring.factories),从类路径下找到配置的所有applicationListener保存起来

   2、 运行run方法

 

SprigBoot核心技术

原文:https://www.cnblogs.com/toov5/p/10781196.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!