@Autowired的匹配規則
參考:
2、@Autowired 詳解-三種實現方式,多種歧義性解決方法
重點內容:
1、適用範圍
@Autowired註解可適用於成員變量、方法和構造函數
@Autowired()
private BaseDao baseDao;
2、優先根據類型裝配
@Autowired註解優先使用根據類型進行標註裝配
3、根據名稱裝配設置
@Autowired註解配置使用@Qualifier可完成按照名稱進行裝配
@Autowired() @Qualifier("baseDao")
private BaseDao baseDao;
4、指定可裝配null值
@Autowired註解默認要求依賴對象必須存在,如果要允許null值,則設置它的required屬性爲false
@Autowired(required=false)
private BaseDao baseDao;
5、@Resource註解
@Resource註解默認按照名字進行裝配,找不到名字匹配的bean時纔會按照類型進行裝配,但如果名字通過name屬性進行指定,則只會按照名字進行裝配。
@Resource(name="baseDao")
private BaseDao baseDao;