English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Der Spring-Framework bietet zwei IOC-Container, um Beans zu verwalten, zu konfigurieren und zu verarbeiten. Einige sind BeanFactory und der Anwendungskontext.
Der Anwendungskontext-Interface erweitert den BeanFactory, um die Funktionen des BeanFactory zu erweitern.
In der neuen Spring-Version wird der BeanFactory durch den ApplicationContext ersetzt. Der BeanFactory ist jedoch vorhanden, um Rückwärtskompatibilität zu gewährleisten.
Spring 2Version 3.0 und höher verwenden den BeanPostProcessor- Erweiterungspunkt (das Interface bietet einige Callback-Methoden, die wir implementieren können, um die Instanziierungslogik, die Abhängigkeitsauflösungslogik usw. zu individualisieren). Daher müssen einige zusätzliche Konfigurationen vorgenommen werden, wenn Sie BeanFactory verwenden, um bestimmte Funktionen (wie AOP und Transaktionen) zu verwenden.
Nummer | Schlüssel | Bohnenwerkstatt | Anwendungsumgebung |
---|---|---|---|
1ein | Realisierung | XMLBeanFactory implementiert BeanFactory | FileSystemXmlApplicationContext, ClassPathXmlApplicationContext und AnnotationConfigWebApplicationContex implementieren ApplicationContext. Darüber hinaus erweitert der ApplicationContext den Beanfactory |
2 | Annotationen | Nein | Ja |
3 | Instanziierung | Benafactory instantiiert Beans, wenn der getBean()-Methodenaufruf erfolgt. | Bean wird beim Starten des Containers instainte angewendet. |
4 | Aktivitätsveröffentlichung | Der Bean-Factory hat nicht die Fähigkeit, Ereignisse an die Beans zu senden | Der Anwendungskontext hat die Fähigkeit, Ereignisse an die Beans zu senden. |
5 | Lade-Mechanismus | Lazy loading | Aggressive Ladevorgänge |