之前在排查一個線上問題時,不得不仔細跑了很多遍Spring Boot的代碼,于是整理一下,我用的是1.4.3.RELEASE。
首先,普通的入口,這沒什么好說的,我就隨便貼貼代碼了:
SpringApplication.run(Application., args); -->
public static ConfigurableApplicationContext run(Object source, String... args) {
return run(new Object[] { source }, args);
}
public static ConfigurableApplicationContext run(Object[] sources, String[] args) {
return new SpringApplication(sources).run(args);
}
也就是一個靜態(tài)方法,調(diào)用了構(gòu)造函數(shù)創(chuàng)建實例,構(gòu)造的參數(shù)是Object數(shù)組,這里new這個數(shù)組的時候傳入了一個元素就是啟動類的類對象實例(一般就是“new Object[] { Application.class” }),構(gòu)造函數(shù)里調(diào)用了一個initialize方法。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26