Spring Boot的啟動流程

2021-10-01 02:49:29 字數 1001 閱讀 5771

3、 建立並配置當前spring boot應用使用的prepareenvironment

5、 列印banner。

7、 建立異常報告exceptionreporters

8、 執行preparecontext方法,對容器做一些相關設定。

9、 核心preparecontext,此布為@enableautoconfiguration自動化配置的關鍵,註冊的關鍵。

1.準備此上下文以進行重新整理 preparerefresh();

2.告訴子類重新整理內部bean工廠。configurablelistablebeanfactory beanfactory = getfreshbeanfactory();

3.準備在此上下文中使用的bean工廠。preparebeanfactory(beanfactory);

4.允許在上下文子類中對bean工廠進行後處理。postprocessbeanfactory(beanfactory);

5.呼叫在上下文中註冊為bean的工廠處理器。invokebeanfactorypostprocessors(beanfactory);

6.註冊攔截bean建立的bean處理器。registerbeanpostprocessors(beanfactory);

7.為此上下文初始化訊息源。initmessagesource();

9.在特定上下文子類中初始化其他特殊bean。onrefresh();

10.檢查偵聽器bean並註冊它們。registerlisteners();

11.例項化所有剩餘的(非延遲初始化)單例。finishbeanfactoryinitialization(beanfactory);

12.最後一步:發布相應的事件。finishrefresh()之後建立web伺服器如:tomcat;

11、 執行 listeners的started,running方法;

springboot 啟動流程

this.resourceloader resourceloader assert.notnull primarysources,primarysources must not be null this.primarysources new linkedhashset arrays.aslist p...

springboot啟動流程

本文以除錯乙個實際的springboot啟動程式為例,參考流程中主要類類圖,來分析其啟動邏輯和自動化配置原理。2.載入springboot配置環境 configurableenvironment 如果是通過web容器發布,會載入standardenvironment,其最終也是繼承了configur...

Spring Boot啟動流程

隨著我們ctrl加滑鼠左鍵的使用,最終我們會在乙個springboot專案中發現啟動過程由以下兩個過程組成 構造過程 public resourceloader resourceloader,class primarysources run方法 string.args context 這個也很重要,...