Springboot主程式類註解配置過程圖解
@SpringBootApplication
點進這個註解看
進去第一個註解@SpringBootConfiguration看,上面有Configuration註解
@Configuration 這是Spring的配置類註解, 說明這個類一個配置類,裡面都是配置檔案
進第二個註解@EnableAutoConfiguration,顧名思義,這是允許自動配置生效的註解, 接下來進去看它。
@EnableAutoConfiguration
進去後也有兩個註解:第一個AutoConfigurationPackage,進去看
裡面有這個註解,@Import({Registrar.class}) @Import是spring的底層註解,作用是給Spring匯入一個Registrar元件
將主配置類所在的包以及以下的包裡的所有元件,掃描到Spring容器中。
第二個@Import({AutoConfigurationImportSelector.class})
進AutoConfigurationImportSelector裡看,
這個configurations陣列是我們需要匯入的元件。看看configurations有什麼,
實際上是將所有需要匯入的元件以類全名的方式返回,這些元件會匯入到容器中
能看到是從META-INF/spring.factories裡獲取EnableAutoConfiguration指定的值,將這些值作為自動配置類匯入到容器中,自動配置類就生效,幫我們完成自動配置工作:
看看spring.factories裡有什麼,有非常多的自動配置類 XXXAutoCOnfiguration(這裡就不進去看了),@Import({AutoConfigurationImportSelector.class})就是給容器中匯入這個場景需要的所有元件並且配置好
注意spring-boot-autoconfigure.jar包。這裡面有所有自動配置的元件
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。