天天看點

Spring DI[依賴注入]

依賴注入(dependency injection,簡稱di)意思是由容器或者架構将被調用類注入給調用對象,以此來降低調用對象和被調用類之間的依賴關系。

依賴注入主要有2種不同的實作形式:

1. 構造函數注入(constructor injection)

2. 設值注入(setter injection)

1.構造函數注入

通過調用類的構造函數,并将被調用類當做參數傳遞給構造函數,以此實作注入。

example:

xml配置檔案的具體配置

上述的例子中service指定userimpl這個對象為userdao,并将其注入給userserviceimpl這個類。最終由userdao這個對象完成getuser的功能。

2.設值注入

設值注入主要通過添加并使用被調用類的set的方法來完成注入。

xml配置資訊與構造函數注入相同。但是上述的例子确實通過set方法将userdao對象注入給userserviceimpl類。

注意二者的差別:

兩種注入方式的選擇

如果需要了解更具體的set注入方式 可參照官方文檔:

Spring DI[依賴注入]