expected single matching bean but found 2: xxx, yyy

字面意思理解,期望得到一个类,但是发现了两个:xxx,yyy。

这时解决方案有两个,一个是在引用的地方指定。比如使用@Autowired引入,则可以使用@Qualifier("xxx")进行指定,或者直接将@Autowired替换为@Resource("xxx")。

另一个方法是在创建Bean的地方加Primary,比如如果是@Bean方式生成,则可以加@Primary注解;如果是SpringMVC的xml文件中的bean,则可以直接加primary="true"。

第一个方案比较灵活,但有些情况不适用,比如@Autowired地方太多,改起来很耗时,或者引入的地方都是jar包class文件,无法改动,这时候就只能用第二种方案了。

相关推荐
代码雕刻家2 分钟前
编程语法细节
java·c语言·开发语言
SimonKing5 分钟前
Agnes AI出桌面版了,可图可视频,免费用
java·后端·程序员
左左右右左右摇晃24 分钟前
手写Tomcat原理整理
java·开发语言·笔记·tomcat
孫治AllenSun28 分钟前
【JVM】四大引用类型分析
java·开发语言·jvm
于慨29 分钟前
安装java
java
夕除31 分钟前
sign 是什么
java·前端
Penina10181 小时前
代码如何导入idea
java·intellij idea
.Hypocritical.1 小时前
Maven笔记——2
java·笔记·maven
huohuopro1 小时前
手写 Tomcat 步骤教程
java·网络
snow@li1 小时前
Java:Lombok 完整讲解
java