日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Springboot Autowried及Resouce使用對比解析

瀏覽:12日期:2023-05-13 08:26:27

在做項目時,發(fā)現(xiàn)項目中 加載類時,有的地方使用@Autowired,有的地方使用@Resource

在網(wǎng)上搜集了資料

共同點

@Resource和@Autowired都可以作為注入屬性的修飾,在接口僅有單一實現(xiàn)類時,兩個注解的修飾效果相同,可以互相替換,不影響使用。

不同點

@Resource是Java自己的注解,@Resource有兩個屬性是比較重要的,分是name和type;Spring將@Resource注解的name屬性解析為bean的名字,而type屬性則解析為bean的類型。所以如果使用name屬性,則使用byName的自動注入策略,而使用type屬性時則使用byType自動注入策略。如果既不指定name也不指定type屬性,這時將通過反射機制使用byName自動注入策略。

@Autowired是spring的注解,是spring2.5版本引入的,Autowired只根據(jù)type進行注入,不會去匹配name。如果涉及到type無法辨別注入對象時,那需要依賴@Qualifier或@Primary注解一起來修飾。

寫列子

新建 HumanService.java類

package com.komiles.study.service;/** * @author komiles@163.com * @date 2020-03-23 11:46 */public interface HumanService { /** * 跑馬拉松 * @return */ String runMarathon();}

實現(xiàn)類 ManServiceImpl.java

package com.komiles.study.service.impl;import com.komiles.study.service.HumanService;import org.springframework.stereotype.Component;import org.springframework.stereotype.Service;/** * @author komiles@163.com * @date 2020-03-23 11:48 */@Servicepublic class ManServiceImpl implements HumanService { /** * 跑馬拉松 */ @Override public String runMarathon() { return ' A man run marathon'; }}

新建HumanController.java

package com.komiles.study.controller;import com.komiles.study.service.HumanService;import com.komiles.study.service.impl.ManServiceImpl;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;/** * @author komiles@163.com * @date 2020-03-23 11:49 */@RestController@RequestMapping('/human')public class HumanController { @Autowired private HumanService humanService; @GetMapping('/run') public String runMarathon() { return humanService.runMarathon(); }}

運行程序

輸出內(nèi)容為: man run marathon

把controller里的 @Autowired 改成@Resource 也能正常訪問。

假如我寫多個實現(xiàn)類會怎么樣呢?

新建一個 WomanServiceImpl.java

package com.komiles.study.service.impl;import com.komiles.study.service.HumanService;import org.springframework.context.annotation.Primary;import org.springframework.stereotype.Component;import org.springframework.stereotype.Service;/** * @author komiles@163.com * @date 2020-03-23 12:01 */@Servicepublic class WomanServiceImpl implements HumanService { /** * 跑馬拉松 */ @Override public String runMarathon() { return 'A Woman run marathon'; }}

運行程序,發(fā)現(xiàn)報錯了,因為有兩個實現(xiàn)類,程序不知道找那個了

怎么辦呢?

有兩種辦法

第一種,在實現(xiàn)類中給類起名字,在引入的時候直接引入名字。

例如:在ManServiceImpl.java類,@Service上加值。@Service(value = 'manService') 或者 @Component(value = 'manService')

package com.komiles.study.service.impl;import com.komiles.study.service.HumanService;import org.springframework.stereotype.Component;import org.springframework.stereotype.Service;/** * @author komiles@163.com * @date 2020-03-23 11:48 */@Service(value = 'manService')//@Component(value = 'manService')public class ManServiceImpl implements HumanService { /** * 跑馬拉松 */ @Override public String runMarathon() { return ' A man run marathon'; }}

在Controller類中使用時,也需要制定一下名字。

如果使用@Resource 需要加上 @Resource(name='manService')

如果使用@Autowired 需要使用@Qualifier(value='manService')

package com.komiles.study.controller;import com.komiles.study.service.HumanService;import com.komiles.study.service.impl.ManServiceImpl;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;/** * @author komiles@163.com * @date 2020-03-23 11:49 */@RestController@RequestMapping('/human')public class HumanController { @Autowired @Qualifier(value = 'manService')// @Resource(name='manService') private HumanService humanService; @GetMapping('/run') public String runMarathon() { return humanService.runMarathon(); }}

如果想優(yōu)先引用某一個類,可以在實現(xiàn)類上使用 @Primary。

項目代碼:

https://github.com/KoMiles/springboot/blob/master/src/main/java/com/komiles/study/controller/HumanController.java

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Spring
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
在线视频观看日韩| 亚洲久久一区| 亚洲精品在线观看91| 日本成人中文字幕| 不卡专区在线| 免费中文字幕日韩欧美| 国产精品麻豆成人av电影艾秋 | 国产精品成久久久久| 日韩一区二区久久| 麻豆视频久久| 丝袜美腿高跟呻吟高潮一区| 美女尤物国产一区| 中文精品视频| 国产日韩在线观看视频| 99久久久久国产精品| 亚洲精品进入| av一区二区高清| 国产精品久久国产愉拍| 午夜日韩福利| 精品一区二区三区视频在线播放| 丝袜亚洲精品中文字幕一区| 日韩在线精品| 国产精品蜜月aⅴ在线| 午夜视频精品| 日韩国产在线| 国产欧美日韩综合一区在线播放| 一本一道久久a久久精品蜜桃| 久久久久九九精品影院| 免费黄网站欧美| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 欧美.日韩.国产.一区.二区| 97久久亚洲| 日韩午夜高潮| 91精品亚洲| 久久中文字幕一区二区| 日韩精品一区二区三区中文 | 国产精品magnet| 亚洲精选久久| 国产亚洲毛片在线| 亚洲成人国产| 欧洲一区二区三区精品| 老司机精品视频在线播放| 亚洲人妖在线| 午夜精品一区二区三区国产| 狠狠久久伊人| 国产精品三级| 丝袜美腿一区二区三区| 亚洲特级毛片| 亚洲一级少妇| 激情国产在线| 精品女同一区二区三区在线观看| 午夜性色一区二区三区免费视频| 一区二区三区四区日韩| 9久re热视频在线精品| 91精品国产调教在线观看| 久久精品理论片| 国产精品a级| 麻豆国产欧美日韩综合精品二区| 欧美一区=区三区| 天堂va欧美ⅴa亚洲va一国产| 模特精品在线| 日韩视频在线一区二区三区 | 国产精品嫩模av在线| 午夜在线视频观看日韩17c| 日本在线成人| 日韩精品成人| 久久国内精品| 国产精品magnet| 99re国产精品| 久久午夜视频| 国产精品综合| 成人羞羞在线观看网站| 精品1区2区3区4区| 日本亚洲视频| 另类欧美日韩国产在线| 99久久精品国产亚洲精品| 红桃视频国产精品| 亚洲精品国模| 精品国产一区二区三区性色av| 999久久久91| 亚洲不卡视频| 国际精品欧美精品| 伊人影院久久| 国产欧美日韩影院| 日韩精品一区二区三区免费观影 | 日韩影院免费视频| 国产精品s色| 亚洲黑丝一区二区| 国产日韩欧美三区| 91精品福利| 日韩av福利| 婷婷亚洲综合| 亚洲精品系列| 嫩呦国产一区二区三区av| 日韩88av| 久久精品欧美一区| 久久午夜精品| 国产精品视频一区二区三区四蜜臂| 国产一区一一区高清不卡| 亚洲成人一区在线观看| 日韩视频在线一区二区三区 | 99精品视频在线| 黑丝一区二区| 欧美日韩中文| av高清不卡| 亚洲一区不卡| 国产精品视频一区二区三区综合| 日本欧美国产| 久久亚洲美女| 久久av影院| 欧美+日本+国产+在线a∨观看| 亚洲综合中文| 麻豆精品视频在线| 黄色欧美日韩| 免费精品一区| 亚洲欧美日韩综合国产aⅴ| 久久国产尿小便嘘嘘| 亚洲精品.com| 日本亚州欧洲精品不卡| 热三久草你在线| 综合色就爱涩涩涩综合婷婷| 你懂的国产精品| 国产精品日本| 欧美a一区二区| 国产亚洲毛片在线| 久久99国产精品视频| 蜜臀av免费一区二区三区| 69精品国产久热在线观看| 日韩美女一区二区三区在线观看| 欧美一区二区三区激情视频| 黄色精品视频| 综合在线一区| 午夜久久影院| 天堂av在线| 国产精品高清一区二区| 亚洲va久久| 黄色成人精品网站| 亚洲成人国产| 日韩欧美字幕| 久久精品国产免费| 国产欧美自拍一区| 日韩一区二区三免费高清在线观看 | 久久成人一区| 亚洲手机视频| 婷婷综合六月| 国产一区丝袜| 精品视频一区二区三区四区五区 | 亚洲日本久久| 蜜桃视频在线观看一区| 米奇777超碰欧美日韩亚洲| 97精品国产一区二区三区| 欧美在线首页| 亚洲精品免费观看| 一区免费视频| 91久久午夜| 不卡av一区二区| 国产一区视频在线观看免费| 国产 日韩 欧美一区| xxxxx性欧美特大| 手机在线电影一区| а√天堂8资源中文在线| 精品国产乱码久久久久久1区2匹| 国产精选一区| 麻豆精品少妇| 免费日韩成人| 精品视频亚洲| 国产精品99久久精品| 91亚洲一区| 涩涩av在线| 亚洲网站视频| 狠狠爱成人网| 先锋亚洲精品| 亚洲精品在线二区| 日本一区福利在线| 奇米狠狠一区二区三区| 国产欧美一区二区色老头| 国产精品a久久久久| 精品美女在线视频| 国产成年精品| 日韩大片在线播放| 99久久99视频只有精品| 99久久激情| 亚洲欧美日韩国产一区| 一区二区国产在线观看| 亚洲精品进入| 国产精品15p| 手机在线电影一区| 亚洲91精品| 日韩精品一级二级 | 韩国精品主播一区二区在线观看| 在线一区视频观看| 中文国产一区| 日本欧美一区| 精品国产乱码久久久| 免费看av不卡| 欧美日韩国产亚洲一区| 久久国产高清| 久久狠狠亚洲综合| av资源中文在线天堂| 色爱综合av|