IOC与DI

控制反转与依赖注入

1.IOC(控制反转)

IOC(Inversion of Control)–即控制反转,这是spring的核心,是面向对象编程中的一种设计原则,可以用来降低计算机的耦合程度。其中最常见的方式有依赖注入(Dependency Injection,简称DI),还有一种方式叫做依赖查找(Dependency Lookup)。通过控制反转,在需要对象实体的时候,通过容器将依赖注入到对象中。

    IOC是spring的核心,贯穿始终

IOC,对于spring框架来说,就是由spring来负责控制对象的生命周期与对象间的关系。spring所倡导的开发方式,就是所有的类都会在spring容器中登记,告诉spring是个什么东西(类),需要什么样的东西(类),然后spring会在系统运行到适当的时候,把你需要的东西主动给你(进行依赖注入),同时也把你交给其他需要你的东西。所有类的创建、销毁都由spring来控制,也就是说控制对象生命周期的不再是引用它 的对象,而是spring。对于某个具体的对象而言,以前是控制其他对象,现在是所有对象都由spring控制,所以叫做IOC控制反转。

2 DI(依赖注入)

IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。以前当需要一个对象时候我们需要new一个对象,在spring中,使用注解,需要一个对象的时候spring会通过反射来实现注入。程序运行过程中,客户类不直接实例化具体服务类实例,而是客户类的运行上下文环境或专门组件负责实例化服务类,然后将其注入到客户类中,保证客户类的正常运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值