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

Каким образом можно задекларировать несколько компонентов одного типа в Spring Container?

Компании, где спрашивали
Right Line

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

sobes.tech AI

В Spring Container можно задекларировать несколько компонентов одного типа, используя разные имена бинов или аннотации с указанием уникальных идентификаторов. Например, с помощью аннотации @Component("beanName") или @Bean(name = "beanName") в конфигурационном классе.

Пример:

@Component("serviceA")
public class MyService implements ServiceInterface {
    // реализация
}

@Component("serviceB")
public class AnotherService implements ServiceInterface {
    // другая реализация
}

При внедрении можно указать конкретный бин по имени с помощью @Qualifier:

@Autowired
@Qualifier("serviceA")
private ServiceInterface service;

Таким образом, Spring Container хранит несколько компонентов одного типа, различая их по именам.