動力節點全網首套Spring Boot框架教程
課程目標:通過本套動力節點框架課程的學習,全面掌握Spring Boot開發框架技術,並在實際專案開發中得心應手使用Spring Boot框架,提升自身的技術能力與價值。適用人群:有一定的Java Web開發基礎。課程概述:Spring Boot是Spring家族下的一個全新開發框架,其設計目的主要是用來簡化Spring應用的建立及開發過程,它提供了自動配置,起步依賴等特性,從而使開發人員從大量的XML配置中解脫出來,Spring Boot致力於在蓬勃發展的快速應用開發領域(rapid application development)成為領導者。本課程由淺入深,手把手帶您學習Spring Boot,體驗Spring Boot的極速開發過程,內容豐富,涵蓋了SpringBoot開發的方方面面,並且同步更新到Spring 2.x版本,來吧,一次性拿下Spring Boot開發框架。
Spring Boot 的應用教程我們已經分享過很多了,今天來通過原始碼來分析下它的啟動過程,探究下 Spring Boot 為什麼這麼簡便的奧祕。
本篇基於 Spring Boot 2.0.3 版本進行分析,閱讀本文需要有一些 Java 和 Spring 框架基礎,如果還不知道 Spring Boot 是什麼,建議先看下我們的 Spring Boot 教程。
Spring Boot 的入口類
@SpringBootApplication public class SpringBootBestPracticeApplication {
public static void main(String[] args) { SpringApplication.run(SpringBootBestPracticeApplication.class, args); }
} 做過 Spring Boot 專案的都知道,上面是 Spring Boot 最簡單通用的入口類。入口類的要求是最頂層包下面第一個含有 main 方法的類,使用註解 @SpringBootApplication 來啟用 Spring Boot 特性,使用 SpringApplication.run 方法來啟動 Spring Boot 專案。
來看一下這個類的 run 方法呼叫關係原始碼:
public static ConfigurableApplicationContext run(Class<?> primarySource, String... args) { return run(new Class<?>[] { primarySource }, args); }
public static ConfigurableApplicationContext run(Class<?>[] primarySources, String[] args) { return new SpringApplication(primarySources).run(args); } 第一個引數 primarySource:載入的主要資源類
第二個引數 args:傳遞給應用的應用引數
先用主要資源類來例項化一個 SpringApplication 物件,再呼叫這個物件的 run 方法,所以我們分兩步來分析這個啟動原始碼。
下載地址:百度網盤