English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
IoC容器负责实例化,配置和组装对象。IoC容器从XML文件获取信息并相应地工作。IoC容器执行的主要任务是:
实例化应用程序类 配置对象 组装对象之间的依赖关系
有两种类型的IoC容器。它们是:
BeanFactory ApplicationContext
org.springframework.beans.factory。 BeanFactory 和org.springframework.context。 ApplicationContext 接口充当IoC容器。ApplicationContext接口建立在BeanFactory接口之上。它比BeanFactory增加了一些额外的功能,例如与Spring的AOP的简单集成,消息资源处理(用于I)18N),事件传播,Web应用程序的特定于应用程序层的上下文(例如WebApplicationContext)。因此,使用ApplicationContext比使用BeanFactory更好。
XmlBeanFactory é uma implementação da interface BeanFactory. Para usar o BeanFactory, precisamos criar uma instância da classe XmlBeanFactory, conforme mostrado a seguir:
Resource resource = new ClassPathResource("applicationContext.xml"); BeanFactory factory = new XmlBeanFactory(resource);
O construtor da classe XmlBeanFactory aceita um objeto Resource, portanto precisamos passar esse objeto de recurso para criar o objeto BeanFactory.
Uso do ApplicationContext
A classe ClassPathXmlApplicationContext é uma implementação da interface ApplicationContext. Precisamos instanciar a classe ClassPathXmlApplicationContext para usar o ApplicationContext, conforme mostrado a seguir:
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
O construtor da classe ClassPathXmlApplicationContext aceita uma string, portanto podemos passar o nome do arquivo xml para criar uma instância de ApplicationContext.