Middle
Ja bini ir deklarēti ar @Configuration un @Bean, kā darbojas @Qualifier un kāds ir bini nosaukums?
sobes.tech AI
Atbilde no AI
Kad beans tiek ar deklarēti ar @Configuration un @Bean, Spring tos izveido ar nosaukumiem, kas atbilst metodes nosaukumam, kas atgriež bean. Piemēram:
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
return new MyServiceImpl();
}
}
Šajā gadījumā, beans nosaukums ir myService.
@Qualifier anotācija tiek izmantota, lai precizētu, kurš tieši beans jāinjicē, ja kontekstā ir vairāki tāda paša tipa beans. Piemēram:
@Bean
public MyService myService1() { ... }
@Bean
public MyService myService2() { ... }
@Autowired
@Qualifier("myService2")
private MyService service;
Šeit, @Qualifier norāda Spring, ka jāinjicē beans ar nosaukumu myService2.
Tādējādi, @Qualifier darbojas pēc beans nosaukuma, kas pēc noklusējuma sakrīt ar metodes nosaukumu, kas deklarē beans, ja vien netiek norādīts kaut kas cits ar name parametru @Bean.