之前也在用这三个接口,但是对于他们的概念还是处于朦胧状态,同时,也不知道他们之间是一个什么关系,趁着现在有点时间总结一下吧,也需要对你有所帮助。
一、BeanFactory
基本认识:
该接口提供了高级IOC配置机制,实现对不同类型JAVA对象的统一管理,从字面意思来理解意思是Bean工厂,即用来创建Bean的工厂,这里的Bean和我们之前理解的JavaBean有些不同,之前我们理解的JavaBean需要符合一定的规范,而这里的Bean范围更大,在这里凡是可以被Spring实例化管理的JAVA类都可以成为Bean,这样说来,这里的Bean首先包含我们刚才说的JavaBean,还包含着其他可以被实例化的Java类,这样说来BeanFactory就是一个工厂,创建可以被实例化和管理的Java对象,如果给其一个更合适的称呼,估计IOC容器算是比较合适吧。
体系结构:
BeanFactory:主要方法为getBean(String beanName),该方法根据Bean名称从容器返回对应的Bean。
ListableBeanFactory:该接口用来访问容器中Bean的基本信息,如获取Bean个数,某一类型Bean的配置名,查看容器是否包含某个Bean。
1、HierarchicalBeanFactory:父子级联IOC容