我們啟動SpringBoot的代碼:
我們主要從3大點着手解析:
@SpringBootApplication注解
建構SpringApplication對象
SpringApplication的run方法
我們來看看SpringBootApplication的注解的代碼:
排除掉上面的4個元注解外,還剩下3個注解,我們一一分析。
@SpringBootConfiguration
這個裡面什麼都沒有,就隻是在這個注解上标明了@Configuration,代表是一個配置類。
2. @EnableAutoConfiguration
這個注解主要是啟動自動配置功能,我們點進去詳細看看。
2.1 我們先看@AutoConfigurationPackage注解
可以看出主要是引入了Registrar這個類,繼續跟蹤Registrar這個類
主要目的擷取SpringBoot主程式啟動類的包名并注冊
2.2 繼續看@Import(AutoConfigurationImportSelector.class)
主要是擷取并篩選出自動配置類并傳回。
@ComponentScan
這個注解就是包掃描的作用,類似Spring裡面的:
書山有路勤為徑,學海無涯苦作舟