Sobes.tech
Назад к вопросам
Junior — Middle
71

Какие действия предпринимаешь, если в Spring-контейнере обнаруживаются несколько бинов одного класса?

Ответ от нейросети

sobes.tech AI

Если в Spring-контейнере обнаруживается несколько бинов одного класса, и требуется внедрить конкретный бин, можно предпринять следующие действия:

  • Использовать аннотацию @Qualifier вместе с @Autowired, чтобы явно указать имя нужного бина.
  • Назначить одному из бинов аннотацию @Primary, чтобы Spring выбирал его по умолчанию при автосвязывании.
  • Внедрять бин по имени через XML-конфигурацию или через конструктор с параметрами.

Пример с @Qualifier:

@Autowired
@Qualifier("beanName")
private MyClass myBean;

Это позволяет избежать неоднозначности при наличии нескольких бинов одного типа.