一般來說,乙個spring boot專案往往會有乙個啟動類,
這就是神奇的地方,帶著疑問去剖析這行短短的**。我們一層層進入這個**你會來到以下這個方法裡面。/**
* @author: 王博
* @date: 2019/5/8 17:19 2019
*/@restcontroller
public class testdemo
public static void main(string args)
}複製**
}複製**
initialize(sources); }
@suppresswarnings()
private void initialize(object sources)
this.webenvironment = deducewebenvironment();
//設定一些initializer
setinitializers((collection) getspringfactoriesinstances(
//設定一些listeners 這個很重要,核心內容。
} 複製**
再來看看非常核心的乙個方法getspringfactoriesinstances() 這個方法上面的**用到了2次,主要是用來例項化spring.factories裡面配置的類,這個方法特別核心如下:
private collection<? extends t> getspringfactoriesinstances(classtype,
class<?> parametertypes, object... args)
複製**
factories_resource_location就是"meta-inf/spring.factories"。public static listloadfactorynames(class<?> factoryclass, classloader classloader)
return result;
} catch (ioexception ex)
}複製**
複製**
具體實現請看接下來的文章springboot 自動化裝配機制(二)
Springboot自動裝配
而下面那個 import 這個類點進去主要就是為了載入springboot的各種配置檔案。在這個類中你可以找到如下這個方法,去載入配置路徑為meta inf spring autoconfigure metadata.properties檔案。還有乙個方法則會去載入目錄下meta inf sprin...
時間服務與cobbler自動化裝機
一,配置chrony服務,實現伺服器時間自動同步 伺服器端配置 客戶端配置 server 192.1.1.10 iburst 新增時間伺服器位址 二 實現cobbler pxe自動化裝機 cobbler check 檢視需要修改的配置項 修改完成後只有4項 vim etc cobbler setti...
spring boot 之自動裝配
在之前用spring框架進行開發的時候,我們要寫巨多的配置檔案,並且隨著功能的完善,還需要不停的修改這些檔案,非常痛苦,但是在使用spring boot 之後就沒有這些煩惱啦 雖然還是要寫一點點,但是對比以前,忽略不計 是真的不需要寫這些檔案了嗎?其實這些檔案時spring boot 在啟動時幫我們...