Главная » Spring » Связывание посредством аннотаций Spring

0

С выходом версии Spring 2.5 появился один из самых интересных способов связывания компонентов, основанный на автоматическом связывании свойств с использованием аннотаций. Автоматическое связывание с использованием аннотаций мало чем отличается от использования атрибута autowire в XML-файле конфигурации. Но он обеспечивает возможность более точного управления автомати- ческим связыванием, позволяя выборочно объявлять свойства, до- ступные для автоматического связывания.

Поддержка автоматического связывания посредством аннота- ций по умолчанию отключена. Поэтому, прежде чем использовать этот способ, необходимо включить его поддержку в конфигура- ционном файле. Проще всего это сделать с помощью элемента

<context:annotation-config> из пространства имен context:

<?xml  version="1.0"  encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

<context:annotation-config />

<!– здесь находятся объявления компонентов –>

</beans>

Элемент <context:annotation-config> сообщает  фреймворку  Spring, что для связывания свойств должен использоваться механизм на осно- ве аннотаций. Добавив этот элемент, можно приступать к добавлению соответствующих аннотаций в программный код, чтобы определить свойства, методы и конструкторы для автоматического связывания.

В Spring 3 поддерживаются несколько аннотаций для автомати- ческого связывания:

# аннотация @Autowired, определяемая самим фреймворком Spring;

#  аннотация @Inject из JSR-330;

# аннотация @Resource из JSR-250.

Сначала мы познакомимся с особенностями использования анно- тации @Autowired, а затем попробуем внедрить зависимости с исполь- зованием аннотаций @Inject и @Resource, определяемых стандартами JSR-330 и JSR-250 соответственно.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

  • Комментарии