概念

@Qualifier是Spring中的注解,是在使用Spring框架中@Autowired注解进行自动注入时,Spring 容器中匹配的候选Bean数目必须有且仅有一个 。

这是因为在使用Spring框架中@Autowired标签时默认情况下使用 @Autowired 注释进行自动注入时,Spring 容器中匹配的候选 Bean 数目必须有且仅有一个。当找不到一个匹配的 Bean 时,Spring 容器将抛BeanCreationException 异常,并指出必须至少拥有一个匹配的 Bean。

比如,有两个service实现了统一业务接口,并且都标注了@Service注解,Spring 允许我们通过 @Qualifier 注释指定注入 Bean 的名称,这样歧义就消除。

@Qualifier参数:@Qualifier的参数名称必须为我们之前定义@Service注解的名称之一

使用:配合autowired使用

也就是说:@Qualifier注解就是通过名字挑选符合条件的,通过这个标示,表明了哪个实现类才是我们所需要的

看下面一个例子更加清晰了就

代码示例

这里我们定义两个接口的实现类,都加上service注解

@Service("a")
public class QualifierServiceImpl implements QualifierService {public QualifierDto getQualifierById(Long id) {return new QualifierDto();}
}@Service("b")
public class QualifierServiceImpl1 implements QualifierService {public QualifierDto getQualifierById(Long id) {return new QualifierDto();}
}

我们应用@Qualifier(“b”),就可以消除上面定义的歧义,注入容器中的就是QualifierServiceImpl1的实例了

@Controller
@RequestMapping("/test")
public class TestQualifier {@Autowired@Qualifier("b")QualifierService qualifierService;@RequestMapping(params = "method=showQualifierInfo")public void showQualifierInfo(HttpServletRequest request, HttpServletResponse response, QualifierDto dto) {......}
}

Spring的注解@Qualifier注解相关推荐

  1. Spring学习(10)--- @Qualifier注解

    按类型自动装配可能多个bean实例的情况,可以使用Spring的@Qualifier注解缩小范围(或指定唯一),也可以指定单独的构造器参数或方法参数 可用于注解集合类型变量 例子: package c ...

  2. @qualifier注解_常见的 Spring 注解概览

    点击上方 Java后端,选择 设为星标 优质文章,及时送达 从Java5.0开始,Java开始支持注解.Spring做为Java生态中的领军框架,从2.5版本后也开始支持注解.相比起之前使用xml来配 ...

  3. spring的@primary和@qualifier注解解决一个接口多个实现的注入问题

    spring的@primary和@qualifier注解解决一个接口多个实现的注入问题 参考文章: (1)spring的@primary和@qualifier注解解决一个接口多个实现的注入问题 (2) ...

  4. Spring注解@Qualifier的详细用法你知道几种「扩展点实战系列」- 第444篇

    历史文章(文章累计440+) <国内最全的Spring Boot系列之一> <国内最全的Spring Boot系列之二> <国内最全的Spring Boot系列之三> ...

  5. Spring的注解@Qualifier用法

    Spring的注解@Qualifier用法 在Controller中需要注入service那么我的这个server有两个实现类如何区分开这两个impl呢? 根据注入资源的注解不同实现的方式有一点小小的 ...

  6. Spring 注解 @Qualifier 详细解析

    1. 概述 今天带你了解一下 Spring 框架中的 @Qualifier 注解,它解决了哪些问题,以及如何使用它.我们还将了解它与 @Primary 注解的不同之处. 2. 痛点 使用 @Autow ...

  7. Spring 注解 @Qualifier和@Primary 详细解析

    1. 概述 今天带你了解一下 Spring 框架中的 @Qualifier 注解,它解决了哪些问题,以及如何使用它.我们还将了解它与 @Primary 注解的不同之处. 2. 痛点 使用 @Autow ...

  8. Spring的注解@Qualifier用法与简析

    1 基本说明 使用@Qualifier可以分别为同样类型的Bean分别注入不同的依赖值 然后当我们@Autowired注入时就会出现异常,NoUniqueBeanDefinitionException ...

  9. spring @Qualifier注解

    spring @Qualifier注解 该注解想必大家都比较熟悉了,可他的用法都有哪些呢? 第一种,相对简单,也是工程师们经常用得到的,用法如下: @Qualifier("userDaoIm ...

最新文章

  1. hive分区用2个字段有何限制_[Hive]新增字段(column)后,旧分区无法更新数据问题...
  2. iOS 9音频应用播放音频之ios9音频基本功能
  3. c语言程序设计运算符及表达式,c语言程序设计3第3章运算符和表达式
  4. python安装numpy-python安装numpy和pandas的方法步骤
  5. android toast通知关闭,屏蔽系统通知,Toast无法显示的解决方案 v2.0.0
  6. GPM - 多语言实现视频
  7. instanceof java list_Java:Instanceof和泛型
  8. Agile in a Flash:重新定义纪律
  9. Linux中wait接口用于延时,linux2.6驱动编写参考
  10. 计算机专业挂职锻炼,计算机学院挂职体验谈
  11. 【转】深入理解JVM—JVM内存模型
  12. linux手机刷机包制作工具_安卓10刷机包
  13. 整站下载工具 webzip
  14. mp3文件太大怎么压缩变小?
  15. 修改域名指向的服务器,让域名指向服务器
  16. 使用Quagga测试Neutron BGP动态路由(by quqi99)
  17. 使用信锐无线控制器对接营运商portal服务器的原理分析与排错
  18. Typora 收费?试试这款开源 Markdown 神器!好用还美观
  19. 服务器重装系统之浪潮服务器
  20. android 定时器倒计时,Android CountDownTimer实现定时器和倒计时效果

热门文章

  1. 家用投影仪哪款好?哪个品牌的投影仪比较好
  2. 十二星座及其含义(转)
  3. 实景三维在文物保护中的应用
  4. 机器人炸鸡贴吧_机器人韩式炸鸡为什么会这么火?
  5. 查询和 01 号的同学学习的课程完全相同的其他同学的信息
  6. 审计学课程01-10:审计基本方法和理论
  7. 酷我音乐盒下载音乐错误退出
  8. 关于word的HOOK(_WwG种)
  9. TCP 的演化史-byte stream 和 packet
  10. dreamweaver郑州旅游网页设计制作 简单静态HTML网页作品 我的家乡网页作业成品 学生旅游网站模板...