Spring - Конфигурация на основе аннотаций
Начиная с Spring 2.5 появилась возможность настраивать внедрение зависимостей с помощью annotations. Таким образом, вместо использования XML для описания связывания bean-компонентов вы можете переместить конфигурацию bean-компонентов в сам класс компонента, используя аннотации для соответствующего класса, метода или объявления поля.
Внедрение аннотации выполняется до внедрения XML. Таким образом, последняя конфигурация переопределит предыдущую для свойств, связанных с помощью обоих подходов.
Подключение аннотации не включено в контейнере Spring по умолчанию. Итак, прежде чем мы сможем использовать проводку на основе аннотаций, нам нужно будет включить ее в нашем файле конфигурации Spring. Поэтому рассмотрите следующий файл конфигурации, если вы хотите использовать любую аннотацию в своем приложении Spring.
<?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/>
<!-- bean definitions go here -->
</beans>
После настройки <context: annotation-config /> вы можете начать аннотировать свой код, чтобы указать, что Spring должен автоматически связывать значения со свойствами, методами и конструкторами. Давайте посмотрим на несколько важных аннотаций, чтобы понять, как они работают.
Sr.No. | Аннотация и описание |
---|---|
1 | @Необходимые Аннотация @Required применяется к методам установки свойств компонента. |
2 | @Autowired Аннотация @Autowired может применяться к методам установки свойств компонента, методам без установки, конструктору и свойствам. |
3 | @Qualifier Аннотацию @Qualifier вместе с @Autowired можно использовать, чтобы устранить путаницу, указав, какой именно компонент будет подключен. |
4 | Аннотации JSR-250 Spring поддерживает аннотации на основе JSR-250, которые включают аннотации @Resource, @PostConstruct и @PreDestroy. |