Spring IoC контейнер: сканирование Classpath и управляемые компоненты

В большинстве примеров в постах Spring IoC контейнер XML используется для указания метаданных конфигурации, которые создают каждое BeanDefinition в контейнере Spring. Предыдущие посты (Конфигурация контейнера на основе аннотаций) демонстрируют, как предоставить множество метаданных конфигурации с помощью аннотаций на уровне кода. Однако даже в этих примерах определения "базовых" bean-компонентов явно определены в файле XML, тогда как аннотации управляют только внедрением зависимостей. В последующих постах Сканирование classpath описывается опция для неявного обнаружения компонентов-кандидатов путем сканирования пути к классам. Компоненты-кандидаты - это классы, которые соответствуют критериям фильтра и имеют соответствующее определение компонента, зарегистрированное в контейнере. Это устраняет необходимость использования XML для регистрации бина. Вместо этого вы можете использовать аннотации (например, @Component), выражения типа AspectJ или ваши собственные критерии фильтрации, чтобы выбрать, какие классы имеют определения бинов, зарегистрированные в контейнере.

Начиная с Spring 3.0, многие функции, предоставляемые проектом Spring JavaConfig, являются частью ядра Spring Framework. Это позволяет вам определять бины с использованием Java, а не с использованием традиционных файлов XML. Взгляните на аннотации @Configuration, @Bean, @Import и @DependsOn, чтобы ознакомиться с примерами использования этих новых функций.


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки