Resource和 Autowired 注入解釋

2021-10-25 21:22:18 字數 1151 閱讀 9012

@resource和@autowired都是通過在介面類上加註解實現 實現類的注入;

即:要使用@resource和@autowired實現注入某個實體物件,必須先新建乙個實體物件的介面類,然後再讓實體類實現該介面;

例:@component

private class buscar

要實現注入buscar,必須新建乙個介面類 car;

public inte***ce car

然後讓原buscar實現介面car;

@component

private class buscar implement car

再通過介面類上加註解實現注入;

@resource 實現注入:

@resource //未設定name 屬性,預設是通過type 注入 car的實現類

private car car;

以上寫法可寫成:

@resource (name= "buscar " ) //通過設定name 屬性,直接載入指定的實現類

private car car;

@autowired 實現注入:

@autowired //沒有name 屬性,預設是通過type 注入 car的實現類

private car car;

當有多個實現類實現了 car介面時,則需要新增註解@qualifier("····") 來指定要注入的實現類

例如再新增加乙個實現類

@component

private class opencar implement car

則 要告知容器需要注入的實現類是哪乙個:

@autowired //沒有name 屬性,預設是通過type 注入 car的實現類

@qualifier("opencar ")

private car car;

另外:@resource 是jdk自帶的註解 ;

@autowired是spring中的註解;

@component 不指定bean的名稱,預設為類名首字母小寫;

@component(「指定name」)

Autowired和 Resource詳細講解

autowired和 resource註解的區別 從spring容器中獲取userdao型別bean 實現類 注入該屬性bytype 根據型別注入 如果存在且唯一,則ok 如果不唯一,組合使用 qualifier userdaoimpl 尋找name為userdaoimpl的bean。autowir...

Autowired和 Resource註解的區別

autowired註解是按型別裝配依賴物件,預設情況下它要求依賴物件必須存在,如果允許null值,可以設定它required屬性為false。如果我們想使用按名稱裝配,可以結合 qualifier註解一起使用。如下 autowired qualifier persondaobean private ...

autowired和resource註解的區別

resource的作用相當於 autowired,均可標註在字段或者屬性的setter方法上。1 autowired qualifier basedao 2private basedao basedao resource 是jdk1.6支援的註解,預設按照名稱進行裝配,名稱可以通過name屬性進行指...