Spring IOC:(控制反转)——Spring通过一种称作控制反转(IoC)的技术促进了低耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
来自百度百科。
不废话直接进入主题。
首先Spring IOC 运用的技术
1.XML配置
2.dom4j(用来解析xml)
3.工厂模式(经常遇到的模式)
4.反射(现在学习java的应该几乎都不会讲)
举例:获取 userService 对象
原始做法: UserService userService = new UserService();
SpringIOC做法:
1.配置文件 <bean id="userService " class="org.ql.service.UserService"/>
2.dom4j解析xml 根据id userService 获取对应的class值 org.ql.service.UserService
String classValue = dom4j 解析的值
3.反射获取class Class clazz = Class.forName(classValue );
UserService userService = clazz.newInstance();
4.以上步骤利用工厂模式封装成方法