Spring Boot启动流程

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Spring Boot启动流程

LemonCode857   2021-01-22 我要评论
 
 

简述:

   准备环境,根据不同的环境创建不同的Environment
   准备、加载上下文,为不同的环境选择不同的Spring Context,然后加载资源,配置Bean
   初始化,这个阶段刷新Spring Context,启动应用
   最后结束流程

详细:

(1)项目启动时,调用入口类MySpringBootApplication的main方法。
 
(2)入口类MySpringBootApplication的main方法会调用SpringApplication的静态方法run。
 
(3)在run方法中首先创建一个SpringApplication对象实例,然后调用SpringApplication对象实例的run方法。
 
(4)查询和加载所有的SpringApplicationListener监听器。
 
(5)SpringApplicationListener监听器调用其starting方法,Spring Boot通知这些SpringApplicationListener监听器,我马上要开始执行了。
 
(6)创建和准备Spring Boot应用将要使用的Environment环境,包括配置要使用的PropertySource以及Profile。
 
(7)创建和初始化应用上下文ApplicationContext。这一步只是准备工作,并未开始正式创建。
 
(8)这一步是最重要的,Spring Boot会通过@EnableAutoConfiguration获取所有配置以及其他形式的IoC容器配置加载到已经准备完毕的ApplicationContext。
 
(9)主要是调用ApplicationContextInitializer类的initialize方法对应用上下文进行设置和处理。
 
(10)调用ApplicationContext上下文的refresh方法,使Ioc容器达到可用状态。
 
(11)查找当前ApplicationContext上下文是否注册有ApplicationRunner与CommandLineRunner,如果有,循环遍历执行ApplicationRunner和CommandLineRunner的run方法。
 
(12)执行SpringApplicationListener的finished方法,Spring Boot应用启动完毕。
 
 

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们