Spring:将@Qualifer附加到Java配置的bean

Ale*_*sky 15 java spring spring-3

在Spring中,您可以XML配置bean以具有限定符.如果通过Java注释配置bean,我似乎无法找到如何附加限定符.那是怎么回事?我只需使用普通的旧名称吗?

Sno*_*irl 30

如果您正在使用注释(而不是基于Java的配置),则可以使用以下内容添加限定符(请参阅Spring文档):

@Component
@Qualifier("myQualifier")
public class MyBean {
    //code
}
Run Code Online (Sandbox Code Playgroud)

要在bean中连接,请使用以下内容(再次参见Spring文档):

public class MyClass {

    @Autowired
    @Qualifier("myQualifier")
    private MyBean myBean;

    //more code

}
Run Code Online (Sandbox Code Playgroud)

  • `@Component("componentName")`有什么问题?@Component @ Qualifier`如何更好? (7认同)
  • @Nick 您可以使用相同的限定符限定多个组件。将其视为一个分组概念。 (2认同)

ska*_*man 19

什么样@Qualifier,你是什么意思?

3.10.4在组件中定义bean元数据

例:

  @Bean @Qualifier("public")
  public TestBean publicInstance() {
      return new TestBean("publicInstance");
  }
Run Code Online (Sandbox Code Playgroud)