编程语言
首页 > 编程语言> > java-在Spring中定义默认的注入实现?

java-在Spring中定义默认的注入实现?

作者:互联网

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

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

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

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

以下内容至少不起作用:

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

解决方法:

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

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

标签:qualifiers,dependency-injection,spring,java
来源: https://codeday.me/bug/20191029/1963900.html