Spring IOC(及DI)

IOC (Inversion Of Control,控制反轉)與DI(Dependency Injecion,依賴注入)java

用於對象間解耦,如在之前若對象A依賴B則須要在A中負責B的建立初始化等工做,如今有了IOC容器(如Spring的)專門負責對象的建立等生命週期的管理,A中只要聲明一個B對象就可以使用而再也不須要負責初始化B(@Autowired等)。「反轉」體如今A得到依賴對象B的過程由以前的主動行爲變成了被動行爲,即得到依賴對象的過程「反轉了」。.net

IOC主要經過DI(Dependency Injection,依賴注入)實現,而DI在實現上主要是經過反射完成的,經過反射動態建立對象。對象

依賴注入的方式:blog

註解注入:@Autowired、@Resource等用於引用對象的注入,@Value用於基本類型的的注入生命週期

setter注入ci

構造器注入get

IOC與DI的區別:前者表示將對象的建立等生命週期交由特定容器如Spring容器管理,後者表示在容器建立對象的過程當中把對象依賴的屬性注入(賦值)到該對象中。io

 

更多可參閱:容器

http://www.javashuo.com/article/p-qvkhwfne-gu.html 依賴注入

https://blog.csdn.net/javazejian/article/details/54561302

 

 

 

詳情可參閱:https://blog.csdn.net/javazejian/article/details/54561302

相關文章
相關標籤/搜索