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

相关文章
相关标签/搜索