Junior — Middle
126
Comment choisir une implémentation spécifique du composant Bean pour l'injection dans un projet Spring ?
Entreprises à qui on a demandé
Réponse de l'IA
sobes.tech IA
В Spring для выбора конкретной реализации компонента (Bean) при внедрении зависимости можно использовать несколько подходов:
- Аннотация
@Qualifier— позволяет указать имя конкретного бина, если существует несколько реализаций одного интерфейса.
@Autowired
@Qualifier("mySpecificBean")
private MyInterface myBean;
-
Имя бина — можно внедрять бин по имени, если использовать аннотацию
@Resource(name = "beanName"). -
Аннотация
@Primary— помечает один бин как основной, который будет внедряться по умолчанию, если не указан@Qualifier. -
Использование конфигурационных классов — можно явно создавать бин нужной реализации с определённым именем.
Таким образом, если в контексте есть несколько реализаций, @Qualifier — самый распространённый способ выбрать нужную.