1. 什么是IOC
-
控制反转,把对象的创建和对象之间的调用过程,交给Spring管理。
-
使用IOC目的是为了降低耦合度。
2. IOC底层原理
xml解析,工厂模式,反射
3. IOC过程
-
xml配置文件,配置创建的对象 <bean id = 'dao' class="com.study.UserDao"><bean>
-
有service类和dao类,创建工程类;
class UserFactory {
String classValue = class 属性值 // xml 解析
Class clazz = Class.forName(classValue); // 通过反射创建对象
return (userDao) clazz.newInstance();
}
4. IOC接口
-
IOC思想基于,IOC容器完成,IOC容器底层就是对象工厂。
-
Spring 提供IOC容器实现两种方式:(两个接口)
-
BeanFactory:IOC容器基本实现,是Spring内部的使用接口,不提供给开发人员使用。
-
加载配置文件的时候不会创建对象,在获取(使用)的时候才会创建。
-
-
ApplicationContext:BeanFactory的子接口,提供更多更强大的功能,一般由开发人员使用。
-
加载配置文件的时候,就会把在xml配置文件中的对象创建。
-
-
ApplicationContext 接口有实现类。
-