我正在使用@ComponentScan
和@Component
定义我的spring bean。我想将其中一个bean声明为autowire-candidate=false
。
这可以通过xml中的此属性来完成。注释中没有等效项吗?
我想要这个的原因是因为我有2个相同接口(interface)的实现,并且我不想使用@Qualifier
。
编辑:使用@Primary是一个有效的解决方法,但是在我看来autowire-candidate似乎是一个有用的功能,它具有自己的语义。
谢谢
最佳答案
看起来像Spring拒绝了autowire-candidate=false
概念,并且不再支持它。没有带注释的类似物,因此@Primary
是您注意到的最佳解决方法。
另一种方法是使用在org.springframework.beans.factory.support.AutowireCandidateResolver
中使用的自定义DefaultListableBeanFactory
,以及从 Autowiring 候选中排除不需要的bean的逻辑。在这种情况下,该技术将类似于autowire-candidate=false
中用于SimpleAutowireCandidateResolver
的技术。
关于java - 使用注解时如何声明Spring bean autowire-candidate ="false"?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28065994/