spring 控制反转和依赖注入(1)
2018-03-05 16:51
344 查看
Spring
Ioc(控制反转):把复杂系统分解成相互合作的对象,这些对象类通过封装以后,内部实现对外部是透明的,从而降低了解决问题的复杂度,而且可以灵活地被重用和扩展。1. 软件系统在没有引入IOC容器之前,对象A依赖于对象B,那么对象A在初始化或者运行到某一点的时候,自己必须主动去创建对象B或者使用已经创建的对象B。无论是创建还是使用对象B,控制权都在自己手上。
2.引入IOC容器之后,对象A与对象B之间失去了直接联系,当对象A运行到需要对象B的时候,IOC容器会主动创建一个对象B注入到对象A需要的地方。
通过前后的对比,我们不难看出来:对象A获得依赖对象B的过程,由主动行为变为了被动行为,控制权颠倒过来了,这就是“控制反转”这个名称的由来。
2. IOC中最基本的技术就是“反射(Reflection)”编程,,通俗来讲就是根据给出的类名(字符串方式)来动态地生成对象,这种编程方式可以让对象在生成时才决定到底是哪一种对象。只是在Spring中要生产的对象都在配置文件中给出定义,目的就是提高灵活性和可维护性。
依赖注入(DI):
由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中。依赖注入spring的注入方式:
··
·1.set注入方式
private OrderServiceImp orderService;
public void setOrderService(OrderServiceImp orderService) {
this.orderService = orderService;
}· 2.静态工厂注入方式
· 3.构造方法注入方式
控制层代码:
private OrderServiceImp orderService;
public OrderAction(OrderServiceImp orderService) {
this.orderService = orderService;
}
Spring配置XML文件:
<bean name="orderAction" class="com.pec.action.OrderAction">
<constructor-arg ref="orderService"></constructor-arg>
</bean>
<bean name="orderService" class="com.pec.service.imp.OrderServiceImp"></bean>· 4.基于注解的方式
相关文章推荐
- spring(3)------控制反转(IOC)/依赖注入(DI)
- Spring——DI(依赖注入)/Ioc(控制反转)
- 【转】跟我一起学Spring 3(4)–深入理解IoC(控制反转)和DI(依赖注入)
- Spring 依赖注入(控制反转)介绍
- Spring(1)初识Spring+IOC(控制反转)+DI(依赖注入)(附:快速入门案例)
- spring IOC --- 控制反转(依赖注入)----简单的实例
- Spring IoC(控制反转)和DI(依赖注入)的理解
- spring.net (1) 概念-控制反转(又名依赖注入)
- Spring 使用注解的方式实现IOC和DI(控制反转和依赖注入)
- Spring的IoC(控制反转) 、DI(依赖注入)
- Spring源码阅读——简单模拟Spring的控制反转IOC和依赖注入(Bean的加载和获取)
- Spring 深入理解IOC(控制反转)和DI(依赖注入)
- Spring IoC(控制反转)和DI(依赖注入)的理解
- Spring学习—控制反转(IOC)Spring依赖注入(DI)和控制反转(IOC)
- Spring IoC和DI(反转控制和依赖注入)原理
- 轻松了解Spring中的控制反转和依赖注入(二)
- Spring的IOC(控制反转)和 DI(依赖注入)机制
- Spring_01 spring容器、控制反转(IOC)、依赖注入(DI)
- Spring_控制反转(IOC)/依赖注入(DI)
- Spring控制反转(依赖注入)的最简单说明