gpt4 book ai didi

spring - @Qualifier ("beanName") 和 @Component ("beanName") 之间的区别

转载 作者:行者123 更新时间:2023-12-02 14:53:56 26 4
gpt4 key购买 nike

使用 @Qualifier("beanName")@Component("beanName") 有什么区别吗?如果没有,是否有首选方法?

最佳答案

通常,您在组件上使用 @Component("beanName"),您在 Autowiring 的类上使用 @Qualifier("beanName")。例如

@Component("myComponent1")
public class MyComponent1 implements MyComponent {
....

}

@Component("myComponent2")
public class MyComponent2 implements MyComponent {
....

}

@Service
public class SomeService implements MyService {

@Qualifier("myComponent1")
private MyComponent myComponent;

...

}

如果一个 bean/component 有多个实现,spring 将不知道选择哪个 bean,因此您需要使用限定符来指定哪个是正确的。

此外,您可以在其中一个组件上使用 @Primary,因此默认情况下它始终处于选中状态。

关于spring - @Qualifier ("beanName") 和 @Component ("beanName") 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53959005/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com