從源碼看SpringBoot自動裝配

一圖帶你看SpringBoot自動裝配

SpringBoot從淺至深

  • 搭建springboot環境,很是的簡單!不須要如何的配置文件,只須要一個引導類,run起來就完事了!

  • @SpringBootApplication註解

    • 引導類裏面只有一個註解@SpringBootApplication註解,從裏面看有3個註解比較重要 spring

    • @SpringBootConfiguration註解 springboot

      • 從源碼看其等同@Configuration,即標註該類是Spring的一個配置類
    • @ComponentScan註解學習

      • 學習spring事後,這個就很簡單了。就是註解掃描
      • 掃描當前類下的package,@Controller/@Service/@Component/@Repository等註解
    • @EnableAutoConfiguration註解 spa

      • @AutoConfigurationPackage註解:自動配置包
        • 裏面仍是依靠的@Import註解,註解掃描的工做。
      • @Import註解:給IOC容器導入組件
        1. FACTORIES_RESOURCE_LOCATION的值是META-INF/spring.factories
        2. Spring啓動的時候會掃描全部jar路徑下的META-INF/spring.factories,將其文件包裝成Properties對象
        3. 從Properties對象獲取到key值爲EnableAutoConfiguration的數據,而後添加到容器裏邊。

總結

@SpringBootApplication等同於下面三個註解:3d

  • @SpringBootConfiguration
  • @EnableAutoConfiguration
  • @ComponentScan
    這3個註解,其中@EnableAutoConfiguration是關鍵註解,做用是啓動自動配置。內部實際使用@Import註解,加載META-INF/spring.factories文件的信息,而後篩選出以EnableAutoConfiguration爲key的數據,加載到IOC容器中,實現自動配置功能!
相關文章
相關標籤/搜索