首先,寫源碼分析真的很花時間,因此但願你們轉的時候也請註明一下,Thanks♪(・ω・)ノhtml
SpringBoot最大的好處就是對於不少框架都默認的配置,讓咱們開發的時候沒必要爲了大一堆的配置文件頭疼,關於Spring boot的配置類在哪裏,怎麼看,我在https://www.cnblogs.com/yangfeiORfeiyang/p/9356981.html這篇博客裏已經寫了,這裏就再也不贅述,咱們就直接看看它是怎麼註冊這些配置的吧數組
首先,由於Spring boot咱們點進@EnableAutoConfiguration這個註解緩存
能夠看到它在被掃描到後後自動加載一個類咱們點進這個類看看框架
直接看下這個方法源碼分析
AutoConfigurationMetadata autoConfigurationMetadata = AutoConfigurationMetadataLoader.loadMetadata(this.beanClassLoader);
能夠看到,它將將一個文件裏的內容讀取爲Properties,而後遍歷使用類加載器進行加載,咱們看看文件裏是什麼內容this
這就是各個框架的配置類htm
在讀取完成以後,它將Properties放進了內部類的屬性裏,咱們再會到以前的類裏blog
能夠看到,在這裏將配置的信息進行了一個過濾,將咱們使用exclude排除掉的一些自動配置類給去掉,並返回了一個String數組
以後被遍歷放到了這個緩存中