繁体   English   中英

Spring继承自动装配注释

[英]Spring Inheritance Autowired Annotations

对于继承,我看到了使用XML定义的示例。 我对使用Autowire和注解有疑问。

我有

@Component
class A{

}

@Component
class B extends A{

}

class TestClass{
    @Autowire
    A aObj;
}

因此,我相信这将注入A类对象。对吗? 另外,如果我将A类设为抽象,它将注入B类对象。 对吗

如果有人可以给我链接到此示例,那也将是一件好事。

我尝试了代码,并得到了如下结果。

上面它抛出NoUniqueBeanException。

  1. 如果我将A类抽象化,它将注入B类Bean并可以正常工作。

  2. 如果我不想将A类抽象化,则需要使用Qualifiers,如下所示

     @Component(value="aBean") class A{ } @Component(value="bBean") class B extends A{ } class TestClass{ @Autowire @Qualifier(value="aBean") A aObj; } 

    这将注入A类bean。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM