亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring中@Autowired和@Qualifier注解的3個知識點小結(jié)

 更新時間:2021年09月27日 15:58:29   作者:北云洛月  
這篇文章主要介紹了Spring中@Autowired和@Qualifier注解的3個知識點小結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@Autowired和@Qualifier注解的3個知識點

1.@Autowired自動注入

默認是先以byType的方式,如果有多個類型相匹配,那么使用byName進行注入

2.如果想直接使用byName的注入方式

那么需要在@Autowired注解的下面加上注解@Qualifier(“userService”),括號里面為要注入的bean的name,如圖

在這里插入圖片描述

3.如果沒有指定Spring創(chuàng)建的bean的名稱

(1) 默認名為類名,但首字母小寫,如:UserService類,創(chuàng)建的bean的name為userService

(2) 如果類名前兩個或以上字母都為大寫,那么bean的名字就是類名,如:TUserService類,默認創(chuàng)建的bean的name為TUserService

@Autowired @Qualifier @Resource的區(qū)別

@Autowired

  • spring的注解,默認按type注入

@Qualifier

  • spring的注解,按名字注入 一般當出現(xiàn)兩個及以上bean時,不知道要注入哪個,作為@Autowired()的修飾用

@Resource

  • @Resource(這個注解屬于J2EE的),默認按name注入,可以通過name和type屬性進行選擇性注入

看下栗子

1.@Autowired

寫一個User類 實例化一個User的Bean 在controller中使用@Autowired注入 運行程序

訪問接口

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

要注意的是@Autowired默認情況下required=true當注入對象未實例化被使用 會空指針 如果要允許null 值,可以設置它的required屬性為false,@Autowired(required=false)

2.@Qualifier

在實例化Bean的時候 實例化兩個 如圖

在這里插入圖片描述

這時候會發(fā)現(xiàn)注入的地方報錯 不清楚要注入哪個bean 錯誤如下圖

在這里插入圖片描述

這時候我們就可以使用@Qualifier來配合@Autowire進行注入了

首先在實例化bean的時候指定名字 注入時使用對應的名字注入 如下圖


在這里插入圖片描述

重新啟動后正常訪問

3.@Resource

默認安照名稱進行裝配,名稱可以通過name屬性進行指定, 如果沒有指定name屬性,當注解寫在字段上時,默認取字段名進行按照名稱查找,如果注解寫在setter方法上默認取屬性名進行裝配。

當找不到與名稱匹配的bean時才按照類型進行裝配。但是需要注意的是,如果name屬性一旦指定,就只會按照名稱進行裝配。

通過name屬性指定注入 啟動項目后可正常訪問

在這里插入圖片描述

不指定name 初始化一個bean,name=user2,

在這里插入圖片描述
在這里插入圖片描述

他首先按照類名小寫user作為name去注入Bean,發(fā)現(xiàn)并沒有這個名字的實例,然后會根據(jù)類型自動匹配 所以運行程序不會出錯 可以正常訪問

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java實現(xiàn)輸出數(shù)字三角形實例代碼

    Java實現(xiàn)輸出數(shù)字三角形實例代碼

    大家好,本篇文章主要講的是Java實現(xiàn)輸出三角形實例代碼,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • Java中數(shù)組的定義和使用教程(三)

    Java中數(shù)組的定義和使用教程(三)

    這篇文章主要給大家介紹了關(guān)于Java中數(shù)組的定義和使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • Java使用反射創(chuàng)建對象示例

    Java使用反射創(chuàng)建對象示例

    這篇文章主要介紹了Java使用反射創(chuàng)建對象,結(jié)合實例形式分析了java使用反射創(chuàng)建對象的具體實現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • Java 解決讀寫本地文件中文亂碼的問題

    Java 解決讀寫本地文件中文亂碼的問題

    這篇文章主要介紹了Java 解決讀寫本地文件中文亂碼的問題的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • MybatisPlus?自定義插件實現(xiàn)攔截SQL修改功能(實例詳解)

    MybatisPlus?自定義插件實現(xiàn)攔截SQL修改功能(實例詳解)

    這篇文章主要介紹了MybatisPlus?自定義插件實現(xiàn)攔截SQL修改功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • Java利用Jackson序列化實現(xiàn)數(shù)據(jù)脫敏

    Java利用Jackson序列化實現(xiàn)數(shù)據(jù)脫敏

    這篇文章主要介紹了利用Jackson序列化實現(xiàn)數(shù)據(jù)脫敏,首先在需要進行脫敏的VO字段上面標注相關(guān)脫敏注解,具體實例代碼文中給大家介紹的非常詳細,需要的朋友可以參考下
    2021-10-10
  • Java之TreeSet和TreeMap的兩種排序方式解讀

    Java之TreeSet和TreeMap的兩種排序方式解讀

    這篇文章主要介紹了Java之TreeSet和TreeMap的兩種排序方式解讀,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java util.List如何實現(xiàn)列表分段處理

    Java util.List如何實現(xiàn)列表分段處理

    這篇文章主要介紹了Java util.List如何實現(xiàn)列表分段處理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • java關(guān)于字符串的常用API

    java關(guān)于字符串的常用API

    字符串其實就是一串連續(xù)的字符,它是由許多單個字符連接而成的。如多個英文字母所組成的一個英文單詞。字符串中可以包含任意字符,這些字符必須包含在一對雙引號之內(nèi),今天就來介紹字符串常用的API
    2023-05-05
  • 詳解SpringMVC注解@initbinder解決類型轉(zhuǎn)換問題

    詳解SpringMVC注解@initbinder解決類型轉(zhuǎn)換問題

    本篇文章主要介紹了詳解SpringMVC注解@initbinder解決類型轉(zhuǎn)換問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03

最新評論