Встречается на собеседованиях • сегодня
Как Spring понимает какой Bean нужно заинжектить
Spring определяет нужный бин для инъекции по типу (классу/интерфейсу) и, при необходимости, дополнительным квалификаторам. Основные механизмы:
- По типу - если в контексте ровно 1 бин подходящего типа:
java
@Autowired
private UserRepository userRepository;- @Qualifier - если несколько бинов одного типа:
java
@Autowired
@Qualifier("jdbcUserRepository")
private UserRepository userRepository;-
Имя поля/параметра - если не указан @Qualifier, Spring попытается найти бин по имени поля/параметра.
-
@Primary - бин с этой аннотацией будет выбран по умолчанию при неоднозначности.
-
@Resource - инъекция по имени (JSR-250 стандарт).
Spring сначала ищет по типу, затем проверяет квалификаторы. Если подходящий бин не найден или найдено несколько без разрешения неоднозначности - будет исключение.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы