@Qualifier注解和@Resource注解-程序员宅基地

技术标签: spring  spring boot  java  springboot  

在传统的MVC实现里面
Spring boot 的controller-service-Impl-Dao-db
controller层调用service接口层里面的方法大多使用
@Autowired自动注入注解
实际上调用Impl的具体实现
但是当一个接口的方法,对应多个实现的时候,怎么区分到底注入哪一个呢
答案是@Qualifier注解和@Resource注解

@Qualifier注解的用处:当一个接口有多个实现的时候,为了指名具体调用哪个类的实现

@Resource注解:可以通过 byName命名 和 byType类型的方式注入, 默认先按 byName的方式进行匹配,如果匹配不到,再按 byType的方式进行匹配。 可以为 @Service和@Resource 添加 name 这个属性来区分不同的实现

例如:

@Service
public interface myService{
    
	public int findSomeone();
}

//第一种实现
@Service("myServiceImpl1")
public class myServiceImpl1 implements myService{
    
	@Overide
	public int findSomeone() {
    
		//根据身份找
	}
}

//第二种实现
@Service("myServiceImpl2")
public class myServiceImpl2 implements myService{
    
	@Override
	public int findSomeone() {
    
		//根据名字找
	}
}

在controller层,采用
1、@Autowired和@Qualifier(“myServiceImpl1”)结合;或者
2、@Resource(name = “myServiceImpl2”);
两种方式指定要注入的是接口的具体是哪个实现类

@Controller
public class UserController{
    
	@Autowired
	@Qualifier("myServiceImpl1")
	public myService myservice;

	@Resource(name = "myServiceImpl2")
	public myService myservice2;
	
	@RequestMapping("/findSomeone")
	public User findSomeone(@RequestParam("xx") int xx) {
    
		User user = myservice.findSomeone(xx);
		return user;
	}
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41357191/article/details/122863275

智能推荐

Android Sensor HAL层分析_sensor hal service-程序员宅基地

文章浏览阅读5.5k次,点赞4次,收藏21次。SensorService_sensor hal service

python nlp 中文伪原创_人工智能伪原创工具(AI伪原创)-程序员宅基地

文章浏览阅读4.3k次。百香果nlp(nlp.100xg.cn):欢迎提交人工智能(AI)、自然语言处理(NLP)、大数据(big data)、机器学习(ML)、数据挖掘(DM)、知识图谱、智能硬件、工业互联网、工业机器人、云计算、5G网络、物联网、边缘计算(MEC)、机器人流程自动化(RPA)、前沿科技相关的公司、术语、API接口、项目、生成器、解决方案、开放平台产品、ai算法、ai模型、源码、sdk\模块、软件系统、..._100xg.cn

基于SpringBoot+Vue企业进存销管理系统设计和实现(源码+LW+部署讲解)-程序员宅基地

文章浏览阅读1k次,点赞11次,收藏22次。企业进存销管理系统 是一款针对商品行业特点设计的综合性管理软件。该系统通过集成采购、入库、销售等核心功能,实现了对商品全流程的精准把控。它采用先进的信息化技术,有效提升了商品企业的管理效率和运营水平,降低了成本,减少了浪费。该系统还具备数据分析功能,帮助企业更好地把握市场动态,优化经营策略,提升市场竞争力系统采用基于Java语言网站开发技术设计的,结合Mysql数据库管理系统对商品进存销相关信息进行管理。按照软件工程学理论完成各阶段设计,经过调试测试达到了管理商品进存销管理信息的能力。

【深度好文】香港富豪卧底贫民窟:“你没出息,是因为不努力”害了多少程序员-程序员宅基地

文章浏览阅读1.1k次。《穷富翁大作战》是香港的一档电台节目。制作团队邀请受过高等教育,出身优渥的精英们,用为期5天的时间,露宿街头、住笼屋、做清洁工,卧底贫民窟,体验底层生活。节目嘉宾之一,亿万富翁,香港江南四大家族之一的田北辰。这位成功创立G2000和U2两个服装品牌,毕业于哈佛大学管理系的商界精英。是众人眼中的强者,也有着强者的优越感。没有努力不能摆平的事,只是你不够拼。初来乍到,他对一切充...

mov 指令用c语言写,汇编总结:mov指令-程序员宅基地

文章浏览阅读3.6k次。mov指令的作用:mov指令可能是汇编里用的最多的指令了,完成c语言里的赋值。mov指令种类:1.普通的mov指令2.做符号扩展的movs3.做零扩展的movz1.普通mov的种类有:movb#完成1个字节的复制movw#完成2个字节的复制movl#完成4个字节的复制movq#完成8个字节的复制2.movs的种类以及为什么要符号扩展指令?1.为什么要用符号扩展指令如果要完成下面的c语言代码..._c语言mov

2018年海南省计算机等级,2018年3月海南计算机等级报名时间、报名入口-程序员宅基地

文章浏览阅读60次。【导语】《2018年3月海南计算机等级考试报名公告》现已发布,据了解2018年起考试将进行改革,具体详见《2018年全国计算机等级考试调整方案》。2018上半年海南计算机等级报名时间:2017年12月11日-26日,考试时间:3月24日-26日,小编现将报考信息发布如下:一、报名时间2018年3月海南计算机等级考试报名时间:2017年12月11日-26日,报名工作采用网上报名的方式,报名网站“海南...

随便推点

android版本低无法安装微信,解决低版本安卓4.4.4无法安装微信的问题-程序员宅基地

文章浏览阅读5.8w次,点赞4次,收藏10次。今天给一台旧手机刷机之后,发现应用商店没有微信安装了,就算去官网下载安装包,安装的时候也提示不匹配系统,无法安装!这是因为微信的v7以上版本已经不支持安卓4.4.x系统了,直接抛弃低系统手机了,但是我认为低版本系统还是有一定用户量的。这台红米note 1s虽然已经满足不了日常使用,但是有时候多手机多个微信登录会方便很多,而且也可以用于接打电话、收发短信等等,解决这个问题只有安装版本低的微信了,但是..._小米安卓4.4.4为什么装不了微信

pjsip android内核,Pjsip Android Video Call: How to display your view in a SurfaceView using Pjsip Libr...-程序员宅基地

文章浏览阅读110次。I am implementing SIP Video Call using Pjsip library.My view is successfully transmitted to other person but what I want is to display my camera view in my screen(Something like WhatsApp).I found that..._pjsip videocall

开源在线excel编辑器_【技能】十个在线小工具,科研&工作必备神器!-程序员宅基地

文章浏览阅读354次。不知道大家是否有和我一样的困扰,需要用某一个软件,但是电脑某一天忽然罢工了,重装系统之后,所有的软件都没有了,又得重新安装。有的大型软件,安装起来能有几个小时,安装过程中又得面对各种问题。我就想着如果有在线版本的就好了,不用安装,想用的时候拿出来,还不占电脑内存。完美!百度了一下,果然有各种在线版本的科研相关小工具。本着造福大家的原则,在这里分享给大家。若是有您中意而我又没有列出的,请在公众号留言...

百度关键词分析工具_百度竞价关键词数据分析的核心秘密-程序员宅基地

文章浏览阅读357次。玩过百度竞价的人都知道,竞价是份花钱的工作,经验都是花钱积累起来的,如何玩好百度竞价,其中一个很核心的关键就是对关键词的掌握。(账户关键词消费图)数据有了,但该如何去分析,以下作为一个长期研究百度竞价关键词数据的分析师为你分享!在分析数据的前提你要对以下问题产生兴趣,最终你会透过数据现象找到实质问题。任何一数据指标的出现,都要剖析它存在的意义,运作原理?产生的数据指标如何去认知理解?数据..._竞价出价和均价的区别

数字化酒店的客户数据管理-程序员宅基地

文章浏览阅读490次,点赞6次,收藏10次。1.背景介绍随着互联网和人工智能技术的不断发展,酒店业也逐渐进入了数字化时代。数字化酒店通过大数据技术、人工智能算法和云计算技术等手段,对酒店业务进行优化和智能化管理。客户数据管理是数字化酒店的核心环节之一,它涉及到客户的个人信息、预订记录、消费记录等多种数据。在这篇文章中,我们将深入探讨数字化酒店的客户数据管理,包括其背景、核心概念、算法原理、代码实例等方面。1.1 背景介绍随着生活...

关于MATLAB对已有数据的频谱分析及关心频率的幅值计算_matlab里对已有数据做频谱图-程序员宅基地

文章浏览阅读2.1k次,点赞2次,收藏6次。直接上代码%% 频谱分析clearclcclose all%% 数据导入% %打开测试数据,多文件处理% [Fnameh,Pnameh] = uigetfile('*.txt');% readfile = fullfile(Pnameh,Fnameh);data = textread('XXX.txt');D = data(:,5);%% 数据计算时域、频域并画图tf = 1/2000;%1/采样频率,获取单个数采样的时间N = length(D);%数据的长度t = t_matlab里对已有数据做频谱图

推荐文章

热门文章

相关标签