3.3自动装配bean的歧义性

  1. 产生歧义的原因

     找到多个符合条件的组件,如下注入talent时会有两个满足条件的组件





  2. 解决方法

    1. 标示首选的bean,但是同时标示两个或多个同样会存在歧义

      • 自动装配标示Primary

      • JavaConfig标示Primary

    @Bean

    @Primary

    public Talent getLiteraryTalent() {

    return new LiteraryTalent();

    }

	* XML标示Primary
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314212910272-1111257626.png 'XML标示')
2. 限定自动装配的bean
* 自动装配限定
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314212937132-289608610.png '自动装配限定')
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314213032018-137086031.png '自动装配限定')
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314213045823-532104254.png '自动装配限定')
* JavaConfig限定
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314213243331-911458318.png '自动装配限定')
3. 使用自定义的限定符注解
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314213309307-1076498844.png '自定义的限定符注解')
![](https://img2018.cnblogs.com/blog/1462954/201903/1462954-20190314213326998-1398699743.png '自定义的限定符注解')

最新文章

  1. GOLANG 常用命令
  2. NetBIOS发包
  3. .Net(C#)最简单的邮件发送案例
  4. Rsync+inotify实现实时同步
  5. php使用memcache与memcached扩展对key值的影响
  6. SGU 246. Black & White(数论)
  7. javascript面向对象创建高级 Web 应用程序
  8. 深入了解mysql数据传输编码原理
  9. ch1-使用路由-静态资源-404页面-ejs模板
  10. Mongodb3.6 基操命令(二)——如何使用help
  11. Linux中jdk的安装配置
  12. @RequestParam与@PathVariable
  13. delphi TTBXToolBar 增加外部控件
  14. Access无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开
  15. Safecracker-HDU1015
  16. C++进程间通信之共享内存
  17. [c/c++]指针(1)
  18. 配置SELINUX
  19. HDU-6156 Palindrome Function(数位DP)
  20. 深入理解JVM与GC回收

热门文章

  1. CS193p Lecture 9 - Animation, Autolayout
  2. 17条 Swift 最佳实践规范
  3. vue父组件获取子组件页面的数组 以城市三级联动为例
  4. 数据结构( Pyhon 语言描述 ) — — 第5章:接口、实现和多态
  5. js中的事件委托或事件代理
  6. Java设计模式学习二
  7. unittest断言方法的使用
  8. bootshiro---开源的后台管理框架--基于springboot2+ shiro+jwt的真正rest api资源无状态认证权限管理框架,开发人员无需关注权限问题,后端开发完api,前端页面配置即可
  9. CSS相对布局和绝对布局
  10. BZOJ 1113 Wall ——计算几何