簡體   English   中英

Spring的類必須是AutoWire中的一個屬性嗎?

[英]Spring does class have to be component to AutoWire a property in it?

在Spring 3.X中,必須將類注釋為組件才能將字段自動裝入其中嗎?

比方說我有:

@Service("myBean")
public class Mybean {

}

public class Target {
    @Autowired
    @Qualifier("myBean")
    private MyBean;
}

然后在我的beans.xml中

<context:component-scan base-package="com.package.beans" />

MyBean.java位於com.package.beans.MyBean package

Target是否必須注釋為@Component或其他一些spring注釋才能自動裝入其中一個字段?

不,它不需要注釋,但它必須是一個Spring bean。 您可以通過使用構造型注釋(如@Component ,但您也可以通過在XML中聲明<bean>元素或從@Bean配置方法返回它來創建Spring bean。

請注意,在任何情況下都最好使用構造函數注入,因為它在自動裝配方面沒有區別,但使測試更容易並且使某些錯誤更加困難。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM