XmlBeanFactory创建容器过程

可用以下代码理解容器创建过程:

ClassPathResource resource = new ClassPathResource("applicationContext.xml");
DefaultListableBeanFactory factory = new DefaultListableBeanFactory();
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(factory);
reader.loadBeanDefinitions(resource);

ClassPathResource的构造参数为路径下的文件名,不带有"classpath:"

import信息:

import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
import org.springframework.core.io.ClassPathResource;

通过factory对象来使用DefaultListableBeanFactory这个IoC容器,在使用IoC容器时,需要如下几个步骤:

1.创建IoC配置文件的抽象资源,这个抽象资源包含了BeanDefiniion的定义信息

2.创建一个BeanFactory,这里使用DefaultListableBeanFactory

3.创建一个载入BeanDefinition的读取器,这个使用XmlBeanDefinitionReader来载入XML文件形式的BeanDefinition,通过一个回调配置给BeanFactory。

4.从定义好的资源位置读入配置信息,具体的解析过程有XMLBeanDefinitionReader来完成。完成整个载入和注册Bean定义之后,需要的IoC容器就建立起来了。这个时候就可以直接使用IoC容器了。

其他的IoC容器创建过程类似

这里参鉴《SPRING技术内幕:深入解析SPRING机构与设计原理》一书。

你可能感兴趣的:(java)