一、概述
Spring快速入门两种实现:BeanFactory快速入门、ApplicationContext快速入门;
二、Spring对应jar包导入
Spring基础jar包导入Context包即可;其内部会包含core包与beans包;
三、BeanFactory快速入门
1、Spring的BeanFactory实现的开发步骤:
① 导入Spring对应jar包或Moven引入;
② 建立Bean对象;
③ XML配置文件配置Bean对象相关信息(还可以通过注解配置);
④ 创建BeanFactory对象,加载配置文件并初始化,通过BeanFactory对象创建Bean实例;常用Xml解析BeanFactory类:DefaultListableBeanFactory
四、ApplicationContext快速入门
1、概述:
ApplicaitonContext又称为Spring容器,内部封装并拓展了BeanFactory;我们在使用ApplicationContext开发时,对应的xml配置文件常命名为:applicaitonContext.xml
2、Spring的ApplicationContext实现的开发步骤:
① 导入Spring对应jar包或Moven引入;
② 建立Bean对象;
③ XML配置文件配置Bean对象相关信息(还可以通过注解配置);
④ 创建ApplicationContext对象,通过ApplicationContext对象创建;常用的Xml解析用ApplicationContext类:ClassPathXmlApplicationContext
五、BeanFactory与ApplicationContext的关系
1、BeanFactory与ApplicationContext的关系:
① BeanFactory是Spring早期接口,称为:Spring的Bean工厂;ApplicationContext是后期更高级接口,称为:Spring容器;
② ApplicationContext在BeanFactory的基础上进行了扩展,例如:监听功能,国际化功能等;BeanFactory的API更偏向底层;ApplicationContext的API大多是对这些底层API的封装;
③ ApplicationContext不仅继承了BeanFactory,其内部还维护着BeanFactory的引用;因此,ApplicationContext与BeanFactory既有继承关系,又有融合关系;
④ 两者对Bean对象初始化的时机不同;原始BeanFactory是在首次调用getBean时才进行对应Bean的创建;而ApplicationContext则在配置文件加载时,容器一创建就将所有的Bean对象(无单独特殊配置)都实例化并初始化好;
2、ApplicationContext与BeanFactory的继承拓展关系图
六、BeanFactory的继承体系
BeanFactory是核心接口;其具体实现类为:DefaultListableBeanFactory,ApplicationContext内部维护的BeanFactory的实现类就是它;
七、ApplicationContext的的继承体系
※※※ 下面的继承体系说明仅在在Spring基础环境下,即只导入spring-context包时,其的继承体系;
常用的三个ApplicationContext实现类说明:
ClassPathXmlApplicationContext:加载类路径下的xml配置文件;
FileSystemXmlApplicationContext:加载磁盘路径下的xml配置文件;
AnnotationConfigApplicationContext:加载注解配置类;