SprigBoot核心技術

啓動原理 運行流程 自動配置原理web

 

1、啓動原理

 

 

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(普通環境容器)spring

– run()
• 準備環境
– 執行ApplicationContextInitializer. initialize()
– 監聽器SpringApplicationRunListener回調contextPrepared
– 加載主配置類定義信息
– 監聽器SpringApplicationRunListener回調contextLoaded
• 刷新啓動IOC容器;
– 掃描加載全部容器中的組件
– 包括從META-INF/spring.factories中獲取的全部EnableAutoConfiguration組件
• 回調容器中全部的ApplicationRunner、CommandLineRunner的run方法
• 監聽器SpringApplicationRunListener回調finishedapp

 

啓動流程:對象

   一、 建立SpringApplication對象,加載並保存全部ApplicationContextInitializer(META-INF/spring.factories),從類路徑下找到配置的全部applicationListener保存起來it

   二、 運行run方法io

相關文章
相關標籤/搜索