Spring IoC контейнер: BeanFactory
BeanFactory API обеспечивает базовую основу для функциональности Spring IoC. Его конкретные контракты в основном используются в интеграции с другими частями Spring и связанных сторонних фреймворков, а его реализация DefaultListableBeanFactory является ключевым делегатом в контейнере GenericApplicationContext более высокого уровня.
BeanFactory и связанные интерфейсы (такие как BeanFactoryAware, InitializingBean, DisposableBean) являются важными точками интеграции для других компонентов инфраструктуры. Не требуя никаких аннотаций или даже отражения, они обеспечивают очень эффективное взаимодействие между контейнером и его компонентами. Компоненты уровня приложения могут использовать те же интерфейсы обратного вызова, но обычно вместо этого предпочитают декларативную инъекцию зависимостей либо через аннотации, либо через программную конфигурацию.
Обратите внимание, что базовый уровень API BeanFactory и его реализация DefaultListableBeanFactory не делают предположений о формате конфигурации или каких-либо аннотациях компонентов, которые будут использоваться. Все эти разновидности поступают через расширения (такие как XmlBeanDefinitionReader и AutowiredAnnotationBeanPostProcessor) и работают с общими объектами BeanDefinition в качестве основного представления метаданных. Это суть того, что делает контейнер Spring таким гибким и расширяемым.
Читайте также:
- Spring IoC контейнер: дополнительные возможности ApplicationContext, развертывание Spring ApplicationContext как файла RAR Java EE
- Spring IoC контейнер: дополнительные возможности ApplicationContext, асинхронные слушатели, упорядочивание слушателей
- Spring IoC контейнер: дополнительные возможности ApplicationContext, удобный доступ к низкоуровневым ресурсам
Комментарии
Отправить комментарий