Spring middle

@Autowired + несколько подходящих бинов — что делать?

Ответ

@Qualifier("beanName") на точке инжекта, или @Primary на одном из бинов, или имя поля/параметра должно совпадать с именем бина.

Разбор: При нескольких подходящих кандидатах Spring не выбирает по порядку регистрации, а кидает NoUniqueBeanDefinitionException; разрешают это через @Qualifier, @Primary или совпадение имени точки инжекта с именем бина. @Lazy лишь откладывает создание бина, но из автовайринга его не исключает, а сужение типа до конкретного класса не помогает, если у этого класса несколько экземпляров-бинов.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться