在springBoot的啟動類中,提供了一個mai函數的程式入口,來啟動載入SpringBoot程式,那麼註解@SpringBootApplication,通過源碼可以看到,它相當於@ComponentScan + @EnableAutoConfiguration + @SpringBootConf ...
在springBoot的啟動類中,提供了一個mai函數的程式入口,來啟動載入SpringBoot程式,那麼註解@SpringBootApplication,通過源碼可以看到,它相當於@ComponentScan + @EnableAutoConfiguration + @SpringBootConfiguration。
通過@SpringBootConfiguration註解的源碼得知,其配置了一個@Configuration註解,來聲明這是一個配置類,經過spring掃描讀取其中的配置信息。所以@SpringBootConfiguration
是來聲明當前類是SpringBoot應用的配置類。他的內部也被也被@Component註解修飾,因此它可以被自動掃描和載入。
通過@ComponentScan註解來指定spring要掃描的包路徑。自動掃描指定包及載入子包的組件,並把他們註冊到spring應用程式中。
通過@EnableAutoConfiguration註解,它啟用了Spring Boot的自動配置機制,根據項目的依賴和配置來自動配置Spring應用程式。
總結:@SpringBootApplication註解簡化了配置和啟動Spring Boot應用程式的過程,通過整合@Configuration、@EnableAutoConfiguration和@ComponentScan註解,實現了自動配置、組件掃描和載入。其中,@EnableAutoConfiguration根據依賴和配置進行自動配置,@ComponentScan用於掃描並載入Spring組件,@SpringBootConfiguration標識啟動類作為Spring Boot應用程式的配置類。