English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Spring-IoC-Container

IoC容器负责实例化,配置和组装对象。IoC容器从XML文件获取信息并相应地工作。IoC容器执行的主要任务是:

实例化应用程序类 配置对象 组装对象之间的依赖关系

有两种类型的IoC容器。它们是:

BeanFactory ApplicationContext

BeanFactory和ApplicationContext之间的区别

org.springframework.beans.factory。 BeanFactory 和org.springframework.context。 ApplicationContext 接口充当IoC容器。ApplicationContext接口建立在BeanFactory接口之上。它比BeanFactory增加了一些额外的功能,例如与Spring的AOP的简单集成,消息资源处理(用于I)。18N),事件传播,Web应用程序的特定于应用程序层的上下文(例如WebApplicationContext)。因此,使用ApplicationContext比使用BeanFactory更好。

Verwendung von BeanFactory

XmlBeanFactory ist eine Implementierung der Schnittstelle BeanFactory. Um BeanFactory zu verwenden, müssen wir eine Instanz der Klasse XmlBeanFactory erstellen, wie folgt:

Resource resource = new ClassPathResource("applicationContext.xml");
BeanFactory factory = new XmlBeanFactory(resource);

Der Konstruktor der Klasse XmlBeanFactory akzeptiert ein Resource-Objekt, daher müssen wir dieses Ressourcenobjekt übergeben, um ein BeanFactory-Objekt zu erstellen.


Verwendung von ApplicationContext

Die Klasse ClassPathXmlApplicationContext ist eine Implementierung der Schnittstelle ApplicationContext. Um ApplicationContext zu verwenden, müssen wir eine Instanz der Klasse ClassPathXmlApplicationContext instantiieren, wie folgt:

ApplicationContext context = 
    new ClassPathXmlApplicationContext("applicationContext.xml");

Der Konstruktor der Klasse ClassPathXmlApplicationContext akzeptiert einen String, daher können wir den Namen der XML-Datei übergeben, um eine Instanz von ApplicationContext zu erstellen.