English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Le cadre Spring fournit deux conteneurs IOC pour la gestion, la configuration et l'opération des beans. L'un est BeanFactory, et l'autre est l'application context.
L'interface ApplicationContext étend BeanFactory pour renforcer les fonctionnalités de BeanFactory.
Dans la nouvelle version de Spring, BeanFactory est remplacé par ApplicationContext. Cependant, l'existence de BeanFactory est pour la compatibilité ascendante.
Spring 2La version 3.0 et versions ultérieures utilisent le point d'extension BeanPostProcessor (l'interface fournit quelques méthodes de rappel que nous pouvons implémenter pour personnaliser la logique d'instanciation, la logique de résolution des dépendances, etc.). Par conséquent, si vous utilisez BeanFactory, certaines fonctionnalités (comme AOP et le traitement des transactions) doivent subir certaines configurations supplémentaires pour pouvoir être utilisées.
Numéro | Clé | Usine de haricots | Environnement d'application |
---|---|---|---|
1Un | Implémentation | XMLBeanFactory implémente BeanFactory | FileSystemXmlApplicationContext, ClassPathXmlApplicationContext et AnnotationConfigWebApplicationContex implémentent ApplicationContext. De plus, ApplicationContext étend Beanfactory |
2 | Annotation | Non | Oui |
3 | Instanciation | Le Benafactory instancie les beans lorsque la méthode getBean() est appelée. | L'application instainte bean au démarrage du conteneur. |
4 | Publication d'activité | Le Bean factory n'a pas la capacité de pousser des événements vers les beans | Le contexte de l'application a la capacité de pousser des événements vers les beans. |
5 | Mécanisme de chargement | Lazy loading | Chargement agressif |