Middle
Agar beanlar @Configuration va @Bean orqali e'lon qilingan bo'lsa, @Qualifier qanday ishlaydi va bean nomi nima?
sobes.tech AI
AIdan javob
@Configuration va @Bean orqali e'lon qilingan zarralar, Spring ularni zarrani qaytaradigan metod nomiga mos keladigan nomlar bilan yaratadi. Masalan:
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
return new MyServiceImpl();
}
}
Bu holda, zarraning nomi myService.
@Qualifier annotatsiyasi, kontekstda bir nechta bir xil turdagi zarralar bo'lsa, qaysi biri in'ektsiya qilinishini aniqlash uchun ishlatiladi. Masalan:
@Bean
public MyService myService1() { ... }
@Bean
public MyService myService2() { ... }
@Autowired
@Qualifier("myService2")
private MyService service;
Bu yerda, @Qualifier Springga, myService2 nomli zarrani in'ektsiya qilishni ko'rsatadi.
Shu tarzda, @Qualifier zarraning nomi bo'yicha ishlaydi, bu odatda, zarrani e'lon qiluvchi metod nomi bilan mos keladi, agar @Bean ichida name parametri bilan aniq ko'rsatilmagan bo'lsa.