Pro Spring 4: различия между версиями

Материал из Home Wiki
Перейти к навигации Перейти к поиску
(не показаны 3 промежуточные версии этого же участника)
Строка 4: Строка 4:
сканирования кода на предмет внедряемых бинов, аннотированных с помощью
сканирования кода на предмет внедряемых бинов, аннотированных с помощью
@Component, @Controller, @Repository и @Service, а также поддерживающих
@Component, @Controller, @Repository и @Service, а также поддерживающих
аннотации @Autowired и @Inject в указанном пакете (и всех eгo внутренних па­
аннотации @Autowired и @Inj ect в указанном пакете (и всех ero внуrренних па­
кетах). В дескрипторе <context:component-scan> можно определить множест­во
кетах). В дескрипторе <context: component-scan> можно определить множест­
пакетов, используя в качестве разделителя запятую, точку запятой или пробел.
во пакетов, используя в качестве разделителя запятую, точку запятой или пробел.
Кроме того, для более детализированного управления этот дескриптор поддержи­вает
Кроме того, для более детализированного управления этот дескриптор поддержи­
включение и исключение сканирования компонентов.
вает включение и исключение сканирования компонентов.
Также можно указать пакет для сканирования через установку атрибута base-package.
Еще можно указать исключения через context:exclude-filter.
 
== bean ==
=== bean/property ===
name - Имя свойства бина
value - значение (простой тип)
До версии 2.5:
ref - ссылка на другой бин по id
После: конфигурировать можно не через property, а в самом bean так:
p:<тут имя свойства>-ref="id другого бина"


= Кофигурация аннотациями =
= Кофигурация аннотациями =
== @Service ==
= @Service =
Пример - @Service("messageRenderer") указывает, что этот бин предоставляет службы,
Пример - @Service("rnessageRenderer") указывает, что этот бин предоставляет службы,
которые могут требоваться другим бинам; в качестве параметра аннотации передается имя бина.
которые могут требоваться другим бинам; в качестве параметра аннотации передается имя бина.
== @Autowired ==
Если указано на setter, то происходит автоматическое связывание.
== @Resource ==
Пример - @Resource (name = "messageProvider") указывается для поддержки автоматического связывания.

Версия 08:10, 11 февраля 2017

Конфигурация XML

context:component-scan

Дескриптор <context:component-scan> сообщает Spring о необходимости сканирования кода на предмет внедряемых бинов, аннотированных с помощью @Component, @Controller, @Repository и @Service, а также поддерживающих аннотации @Autowired и @Inj ect в указанном пакете (и всех ero внуrренних па­ кетах). В дескрипторе <context: component-scan> можно определить множест­ во пакетов, используя в качестве разделителя запятую, точку запятой или пробел. Кроме того, для более детализированного управления этот дескриптор поддержи­ вает включение и исключение сканирования компонентов.

Кофигурация аннотациями

@Service

Пример - @Service("rnessageRenderer") указывает, что этот бин предоставляет службы, которые могут требоваться другим бинам; в качестве параметра аннотации передается имя бина.