Spring Boot的主要執行流程


(1)創建 Spring Application 實例,調用 run 方法,同時將啟動入口類作 為參數傳遞進去,由此開始了 Spring Boot 內部相關核心組件以及配置的 啟動和加載;

(2)通過 Spring Factories Loader 加載 META-INF/spring.factories 文 件,獲取並創建 SpringApplicationRunListener 對象;

(3)然后由 SpringApplicationRunListener 來發出 starting 消息;

(4)創建參數,並配置當前 SpringBoot 應用需要使用的 Environment 實 例;

(5)完成之后,依然由 SpringApplicationRunListener 來發出 environmentPrepared 消息;

(6)創建 Spring 的應用上下文實例:ApplicationContext,初始化該實例 並設置應用環境配置實例:Environment,同時加載相關的配置項;

(7)由 SpringApplicationRunListener 發出 contextPrepared 消息,告 知 SpringBoot 應用當前使用的 ApplicationContext 已准備完畢;

(8)將各種 Bean 組件裝載入 Spring 的 IO 容器/應用上下文: ApplicationContext 中,繼續由 SpringApplicationRunListener 來發出 contextLoaded 消息,告知 SpringBoot 應用當前使用的 ApplicationContext 已准備完畢;

(9)重新刷新 Refresh Spring 的應用上下文實例:ApplicationContext, 完成 IOC 容器可用的最后一步;

(10)由 SpringApplicationRunListener 發出 started 消息,完成最終的 程序的啟動;

(11)由 SpringApplicationRunListener 發出 running 消息,告知程序已 成功運行起來了。

附圖1

 

附圖2

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM