1、前言java
前面幾章主要講了一些和加載配置文件相關的一些spring boot 基礎分析,本章開始將總結以前講的文章。spring
2、時序圖app
畫了個關於org.springframework.boot.SpringApplication.java的類關於run()方法的時序圖,你們能夠參考一下,有個更清晰的認識,以下圖,若是看不清,請 右鍵->在新窗口打開。spa
3、時序圖配合源碼講解blog
1.首先咱們看黑線部分,首先SpringApplication調用了一下run()方法,接着在run()方法內部實現的後續的方法。源碼
2.方法解釋:io
SpringApplication效率
run(): 基礎
運行刷新運行springApplication;配置
preparedEnvironment(SpringApplicationRunListeners listeners,
ApplicationArguments applicationArguments):
建立和準備環境
configureIgnoreBeanInfo(environment):
從environment中讀取是否忽略beanInfo
printBanner(environment):
打印spring的一些圖標信息,如spring默認的是SpringBootBanner
createApplicationContext():
建立applicationContext;
未完待續。。。
StopWatch
start():開始記錄
stop() : 結束記錄效率
主要進行程序運行效率的記錄。
SpringApplicationRunListeners
starting(): 表示當運行方法剛開始時當即調用。能夠用於SpringApplicationRunListeners很是早期的初始化
started() : 表示Spring Application 上下文已經被刷新而且應用已經啓動,
可是 CommandLineRunners和ApplicationRunners 沒有被調用的狀態.