BeanFactory,以Factory结尾,表示是一种工厂。
作用: 是一个接口,定义了生产Bean对象的工厂应有的方法,如下图,定义了一个Bean工厂,最基本的方法。
职责: 它是负责生产和管理bean的一个工厂,用于实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。
BeanFactory只是一个接口,并不是IOC容器的具体实现,但是Spring容器给了很多BeanFactory的实现,
如:
- DefaultListableBeanFactory:默认的顺序Bean的bean工厂
这些具体的视线,都实现了BeanFactory接口,再在其基础之上实现了其他接口,所以附加了其他的功能。
举个例子,DefaultListableBeanFactory
原始的BeanFactory无法支持spring的许多插件,如AOP功能、Web应用等。ApplicationContext接口,它由BeanFactory接口派生而来。现在一般使用ApplicationnContext,其不但包含了BeanFactory的作用,同时还进行更多的扩展。