springboot啟動流程

2021-09-22 08:15:25 字數 670 閱讀 1874

本文以除錯乙個實際的springboot啟動程式為例,參考流程中主要類類圖,來分析其啟動邏輯和自動化配置原理。

2.載入springboot配置環境(configurableenvironment),如果是通過web容器發布,會載入standardenvironment,其最終也是繼承了configurableenvironment,類圖如下

可以看出,*environment最終都實現了propertyresolver介面,我們平時通過environment物件獲取配置檔案中指定key對應的value方法時,就是呼叫了propertyresolver介面的getproperty方法

lifecycle:生命週期類,定義了start啟動、stop結束、isrunning是否執行中等生命週期空值方法

6.接下來的refreshcontext(context)方法(初始化方法如下)將是實現spring-boot-starter-*(mybatis、redis等)自動化配置的關鍵,包括spring.factories的載入,bean的例項化等核心工作。

摘自:

springboot 啟動流程

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

Spring Boot啟動流程

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

springboot啟動流程

1 判斷當前類是web的serverlet 2 載入所有的初始化器 3 載入所有的 4 設定程式執行的主類 2 執行run方法 1 建立計時器物件開始計時 2 設定handless的屬性並設定到系統屬性中 3 初始化 getrunlister 4 啟動準備好的 5 設定命令列引數 6 準備環境物件 ...