2 回答

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超3個(gè)贊
@Autowired注解是按類型裝配依賴對象,默認(rèn)情況下它要求依賴對象必須存在,如果允許null值,可以設(shè)置它required屬性為false。
@Resource注解和@Autowired一樣,也可以標(biāo)注在字段或?qū)傩缘膕etter方法上,但它默認(rèn)按名稱裝配。名稱可以通過@Resource的name屬性指定,如果沒有指定name屬性,當(dāng)注解標(biāo)注在字段上,即默認(rèn)取字段的名稱作為bean名稱尋找依賴對象,當(dāng)注解標(biāo)注在屬性的setter方法上,即默認(rèn)取屬性名作為bean名稱尋找依賴對象。
@Resources按名字,是JDK的,@Autowired按類型,是Spring的

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
a。@Resource默認(rèn)是按照名稱來裝配注入的,只有當(dāng)找不到與名稱匹配的bean才會(huì)按照類型來裝配注入;
b。@Autowired默認(rèn)是按照類型裝配注入的,如果想按照名稱來轉(zhuǎn)配注入,則需要結(jié)合@Qualifier一起使用;
c。@Resource注解是又J2EE提供,而@Autowired是由spring提供,故減少系統(tǒng)對spring的依賴建議使用@Resource的方式;
添加回答
舉報(bào)