一.什么是Spring?Spring框架的概述
①.Spring是轻量级的开源的javaEE框架
②.可以解决企业应用开发的复杂问题
③.Spring的两个核心部分:IOC(容器)和AOP
IOC:控制反转,把创建对象过程交给Spring进行管理
AOP:面向切面,不修改源代码进行功能增强
二.Spring的特点:
1.方便解耦,简化开发
2.AOP编程的支持
3.方便程序的测试
4.方便和其他框架进行整合(如mybatis)
5.方便进行事务操作
6.降低API开发难度
三.IOC
1.什么是IOC
即控制反转,把对象创建和对象之间的调用过程,交给Spring进行管理,我们不再需要通过new的方式去创建对象,相当于IOC有一个专门的容器创建这些对象,对属性进行注入等,所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring
2.使用IOC的优点:降低代码耦合度,具有更好的移植性
3.IOC的底层原理
XML的解析、工厂模式、反射
IOC思想基于IOC容器完成,IOC容器底层就是对象工厂
四.IOC的接口
1.Spring提供IOC容器实现的两种方式
① BeanFactory:IOC容器基本实现,是Spring内部使用的接口,不推荐开发人员进行使用
特点:加载配置文件的时候不会创建对象,而是在获取或使用的时候才去创建对象
② ApplicationContext:BeanFactory接口的子接口,提供了更多更强大的接口(使用最多)
特点:加载配置文件的时候就会把配置文件中的对象进行创建(此特点更好,将创建对象需要的时间交给服务器,是程序在运行时体验更好)