Не могу я использовать аннотацию, чтобы указать, что боб является основным бобом

Мы знаем в Spring, <боб> имеет атрибут, "основной", чтобы указать, что боб является первым кандидатом, если существует несколько бобов, доступны, чтобы быть автосоединенным проводом к свойству.

Но теперь все мое бобовое определение объявляется с помощью @Component / Сервис, и т.д., я не могу найти соответствующий "основной" атрибут, который я могу использовать для объявления боба.

Советуйте, как я могу достигнуть этого, спасибо.

8
задан Boris Pavlović 4 January 2010 в 09:41
поделиться

2 ответа

Весной 3.0 вы используете @Primary.

Указывает на то, что фасоль должна быть дана. предпочтение при наличии нескольких кандидатов имеют право на автоматическую прослушку однозначная зависимость. Если именно один "первичный" боб существует среди кандидаты, это будет автоматический значение.

Может использоваться непосредственно в любом классе, или опосредованно аннотированный Компонентом или на методах, аннотированных Бобом.

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

См. см. документы .

.
26
ответ дан 5 December 2019 в 05:34
поделиться

@Первичная аннотация будет работать, только если вы используете пружину 3.0.

Весной 2.5 нет эквивалентной аннотации для первичного атрибута. Вы должны использовать аннотацию @Qualifier, чтобы указать, какую фасоль вы хотите впрыснуть. Другой вариант - определить вашу собственную аннотацию классификатора для той же цели.

Смотрите docs для получения дополнительной информации.

4
ответ дан 5 December 2019 в 05:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: