(1)控制反转,把对象创建和对象之间调用的过程,交给spring管理。
(2)为了降低耦合度(降低各个对象和类的关联程度)
底层原理
(1)XML解析(2)工程设计模式,反射机制
过程
(1)配置XML文件,配置创建的对象
(2) 有service类和dao类,创建工厂类
IOC接口
加载XML文件,通过工厂模式创建对象
(1)BeanFactory IOC容器基本实现 spring内部使用 不提供给外部开发人员使用。
*接上接口的时候不会创建对象只会加载配置,只有在需要创建对象的时候才创建对象。(类似懒汉式)
(2)ApplicationContext BeanFactory子接口,提供更多更强大的功能,面向开发人员
*加载配置文件的时候就会直接创建对象。(类似饿汉式)
ApplicationContext主要实现类
(1)FileSystemXmlApplicationContext
(2)ClassPathXmlApplicationContext
IOC操作Bean管理
(1)Bean管理:
(1)spring创建对象(2)spring属性注入
IOC操作Bean管理(xml)
(1)基于xml尝试创建对象
使用bean标签添加对应属性
1.使用bean标签,标签里面添加对应属性,就可以实现对象创建。
2.在bean标签有很多属性,介绍常用属性。
id属性:唯一表示。
class属性:类全路径(包类路径)
3.创建对象的使用默认执行无参构造器。
(2)基于xml方式注入属性
1.DI:依赖注入,就是注入属性
使用set方法注入,使用有参数构造进行注入。(借用XML)