4

我有一个由其他一些类扩展的基类。因此,我必须提供能够注入特定实例的限定符。

我想知道我是否可以将这些类中的任何一个(例如最高级的类)标记为默认类,如果没有提供限定符,会被选中@Autowired

@Service
//@Qualifier("Parent")
class ParentRunner;

@Service
@Qualifier("Child")
class ChildRunner extends ParentRunner;

以下至少不起作用:

@Autowired
//@Qualifier("Parent")
private ParentRunner runner;
4

1 回答 1

7

您可以标记一个实现,@Primary然后将其用作默认值。使用 xml 时,您可以使用primary元素内的bean元素将实例设置为要使用的主 bean 实例。

http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/context/annotation/Primary.html

于 2014-01-29T11:00:51.307 回答