2023年01月05日 20:17:23
xmlns:context=""
/spring-context-2.5.xsd
@resource(name="student_annotation")
private student student;
從該註解本身
@target()
@retention(runtime)
public @inte***ce resource
1、該註解可以用於屬性上或者方法上,但是一般用於屬性上
2、該註解有乙個屬性name,預設值為""
1、當啟動spring容器的時候,spring容器載入了配置檔案
2、在spring配置檔案中,只要遇到bean的配置,就會為該bean建立物件
3、在納入spring容器的範圍內查詢所有的bean,看哪些bean的屬性或者方法上加有@resource
4、找到@resource註解以後,判斷該註解name的屬性是否為""(name沒有寫)
如果沒有寫name屬性,則會讓屬性的名稱的值和spring中id的值做匹配,如果匹配成功則賦值
如果匹配不成功,則會按照型別進行匹配,如果匹配不成功,則報錯
如果有name屬性,則會按照name屬性的值和spring的bean中id進行匹配,匹配成功,則賦值,不成功則報錯
個人分類: spring
Resource與 Autowired註解的區別
一 resource注入 現在有乙個介面human和兩個實現類manimpl womanimpl,在service層的乙個bean中要引用了介面human,這種情況處理如下 介面human public inte ce human public void walk 實現類womanimpl serv...
註解 Resource與 Autowired的區別
注意 spring容器以name為key儲存bean!這裡的name可以指定,否則取首字母小寫的類名。有相同的就報異常 beandefinitionstoreexception!resource resource有兩個常用屬性name type,所以分4種情況 指定name和type 通過name找...
註解 Autowired與 Resource的區別
共同點 resource和 autowired都可以作為注入屬性的修飾,在介面僅有單一實現類時,兩個註解的修飾效果相同,可以互相替換,不影響使用。注意 在只有單一的實現類時,兩個註解的作用相同 不同點 在spring中 autowired注入規則 autowired預設是按照bytype進行注入的,...