java-显式注入标记为@Component的bean

前端之家收集整理的这篇文章主要介绍了java-显式注入标记为@Component的bean 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

因此,出于某种原因,我们项目的一半bean用@Component标记,并注入到其他带有@Autowired批注标记为@Component的对象中,而另一半则用appliciationContext.xml bean声明和带有ref bean值的属性显式地连接起来.

问题是,在那些xml bean声明中,我可以注入标记为@Component的对象之一吗?如果是这样,它的bean引用名称将是什么?

例如;

有些类是这样注释的;

@Component
public class BeanAImpl{ ... }

然后在applicationContext.xml中显式地连接其他类,因为它们没有被注释.

<bean id="beanB" class="com.myapp.BeanBImpl"></bean>

我可以在applicationContext.xml中注入两种“豆类”吗?

<bean id="beanUser" class="com.myapp.BeanUserImpl">
    <property name="beanA">HOW_TO_GET_REF_TO_BEANA?</property>
    <property name="beanB"><ref bean="beanB"/></property>
</bean>
最佳答案
BeanAImpl类型的@Component的默认名称是beanAImpl,可以像手动声明的bean一样在XML中使用它(还请注意,< property>允许使用较短的语法):

<property name="beanA" ref = "beanAImpl" />

另外,您可以将名称显式设置为@Component(“ beanA”).

猜你在找的Spring相关文章