Встречается на собеседованиях • сегодня
Как использовать выборочно два Bean одного типа в контексте Spring
В Spring можно различать бины одного типа с помощью аннотации @Qualifier или указывая имя бина напрямую.
Пример:
java
@Component
@Qualifier("firstService")
public class FirstServiceImpl implements MyService { ... }
@Component
@Qualifier("secondService")
public class SecondServiceImpl implements MyService { ... }
@Service
public class ConsumerService {
private final MyService firstService;
private final MyService secondService;
text
@Autowired
public ConsumerService(
@Qualifier("firstService") MyService firstService,
@Qualifier("secondService") MyService secondService
) {
this.firstService = firstService;
this.secondService = secondService;
}}
text
Также можно использовать `@Resource(name = "beanName")` для инжекта по имени. Если бины не помечены `@Qualifier`, можно ссылаться на них по имени класса (с маленькой буквы).
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы