Sobes.tech
Junior — Middle
117

Spring projesinde enjeksiyon için Bean bileşeninin belirli bir uygulamasını nasıl seçersiniz?

Sorulan şirketler
IT OneIT One

AI'dan gelen yanıt

sobes.tech yapay zeka

В Spring для выбора конкретной реализации компонента (Bean) при внедрении зависимости можно использовать несколько подходов:

  1. Аннотация @Qualifier — позволяет указать имя конкретного бина, если существует несколько реализаций одного интерфейса.
@Autowired
@Qualifier("mySpecificBean")
private MyInterface myBean;
  1. Имя бина — можно внедрять бин по имени, если использовать аннотацию @Resource(name = "beanName").

  2. Аннотация @Primary — помечает один бин как основной, который будет внедряться по умолчанию, если не указан @Qualifier.

  3. Использование конфигурационных классов — можно явно создавать бин нужной реализации с определённым именем.

Таким образом, если в контексте есть несколько реализаций, @Qualifier — самый распространённый способ выбрать нужную.