Встречается на собеседованиях • сегодня

Какие знаешь способы решения проблемы, если несколько Bean имплементируют один и тот же интерфейс в Spring

В Spring есть несколько способов разрешения неоднозначности при внедрении бинов с одним интерфейсом: 1. **@Qualifier** - явное указание имени бина: ```java @Autowired @Qualifier("firstService") private MyService myService; ``` 2. **@Primary** - пометить один бин как основной: ```java @Bean @Primary public MyService firstService() { return new FirstServiceImpl(); } ``` 3. **Имя поля/параметра** - Spring сопоставляет по имени: ```java @Autowired private MyService firstService; // найдет бин с именем firstService ``` 4. **@Resource** (JSR-250) - внедрение по имени: ```java @Resource(name="secondService") private MyService myService; ``` 5. **Лямбда-выражение** (в конфигурации): ```java @Bean public SomeComponent component(Provider provider) { return new SomeComponent(provider.get("secondService")); } ```
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы