spring boot框架學習2-spring boot核心(1)

本節主要:java

1:解析spring boot入口和@SpringBootApplication源碼詳解web

SpringBootApplication包含:spring

@SpringBootConfigurationmongodb

@ComponentScan緩存

@EnableAutoConfigurationtomcat

本文是《凱哥陪你學系列-框架學習之spring boot框架學習》中第二篇 spring boot核心(1)springboot

聲明:本文系凱哥Java(www.kaigejava.com)原創,未經容許,禁止轉載!app

一:spring boot 入口和註解解析框架

回顧上篇中,咱們講到第一個spring boot應用中入口:spring-boot

請點擊此處輸入圖片描述

說明:

spring boot的項目通常都會有*Application的入口類,入口類中會有main方法。這是一個標準的java應用程序的入口方法。

@controller:這個註解是spring的。聲明是一個controller類。

@springBootApplication:這個是springboot的註解。

請看這個類的源碼:

請點擊此處輸入圖片描述

從源碼中,咱們能夠看到這個註解實際上是一組組合註解。

先來看@springbootConfiguration這個註解。

請點擊此處輸入圖片描述

從其源碼中,咱們能夠看到該註解使用了@configuration註解。因此在使用@springbootConfiguration註解的時候,能夠不使用@configuration註解。

其實在springboot項目中給推薦使用springbootConfiguration來替代@configuration註解的。

回來接着看springbootApplication註解,其包含了@componentScan註解。

@componentScan源碼以下:

請點擊此處輸入圖片描述

@conponentScan:這個註解默認掃描@springbootapplication所在類的同級目錄以及他的子目錄。

從componentscan源碼註釋中咱們能夠看要:

請點擊此處輸入圖片描述

@EnableAutoConfiguration註解講解:

查看該註解源碼及註釋:

請點擊此處輸入圖片描述

該註解啓用自動配置。從源碼的註釋中咱們能夠知道,該註釋會使spirng boot根據項目中依賴的jar包自動配置項目的配置項。

例如:咱們在pom.xml中配置了spring-boot-starter-web的依賴,項目中也就會引入SpringMVC的依賴,Spring Boot就會自動配置tomcat和SpringMVC。spring boot自動配置後以下圖:

請點擊此處輸入圖片描述

延伸:

經過上面的瞭解,咱們得知,spring boot會根據項目中jar包依賴,自動作出配置,spring boot支持的自動配置以下(很是多的。下圖並不是所有):

請點擊此處輸入圖片描述

從上圖中咱們能夠看到不少咱們熟悉的已經被自動配置了。

如:

批處理框架 spring batch。

cache緩存

spring cloud

數據處理的 spring jpa

mongodb、neo4j、redi、solr等

若是咱們想,不須要spring boot自動配置,想關閉某一項的自動配置,又該如何設置呢?

歡迎繼續學習下一篇。在下一篇中咱們將作出解答。

本系列其餘文章:

spring boot框架學習學前掌握之重要註解(1)-spring的java配置方式

spring boot框架學習學前掌握之重要註解(2)-經過java的配置方式進行配置spring

spring boot框架學習學前掌握之重要註解(3)-經過註解方式讀取外部資源配置文件

spring boot框架學習學前掌握之重要註解(4)-經過註解方式讀取外部資源配置文件2

spring boot框架學習1-認識spring boot和快速入門

spring boot框架學習2-spring boot核心(1)

歡迎關注凱哥公衆號:凱哥Java

歡迎訪問凱哥我的網站:www.kaigejava.com

本文出處:http://www.kaigejava.com/article/detail/49

相關文章
相關標籤/搜索