“expected single matching bean but found”错误解析 1. 错误信息含义 “expected single matching bean but found”这一错误信息通常出现在使用Spring框架进行依赖注入时。它的意思是Spring容器在尝试根据某种条件(如类型、名称等)匹配并注入一个bean时,期望找到一个匹配的bean,但实际上找到了多个,导致无法决定应该注...
原因出在Autowired注解,Autowired是把spring容器中已经存在的bean注入(装配)到对象中,Autowired优先根据bean类型注入,如果该类型有一个bean,注入成功,如果有多个bean,则根据名字注入,注入bean的名字与属性的名字形同的bean,没有名字相同的会报expected single matching bean but found。 UserService.java中属性为createUser...
其实这种是由于编码不规范,或者任意增加包扫描导致的错误,造成了两次扫描;例如 com.ceshi.A 第一次扫描: SpringBootApplication 默认就会扫描包下所有要注入的bean,此时扫描到的bean名称,在不自定义的情况下,就为 a; 第一次扫描: 自己自定义了一个扫描类,且开启了一个东西 nameGenerator = FullyQualifiedAnnotation...
这是因为从bean容器中找到的bean不是唯一的,找到了2个匹配的bean,这时候注入bean就会报错。 比如说一个service接口有两个实现类 一、@Autowired方式注入 @Autowired是Spring提供的,默认是byType注入的,首先会在容器中查找对应类型的bean 如果找到结果刚好为一个,就将该bean装配给@Autowired指定的数据 如果找到的结果不...
字面意思理解,期望得到一个类,但是发现了两个:xxx,yyy。这时解决方案有两个,一个是在引用的地方指定。比如使用@Autowired引入,则可以使用@Qualifier("...
敲黑板啦 ? 注入失败,出现如下的错误:Unsatisfied dependency expressed through field 's1'; 和“expected single matching bean but found 2:***,***”你需要加入:@Qualifier(value = "***") 如下: 1 2 3 4 5 6 7 8 @Autowired @Qualifier(value ="stringStore") ...
预计至少有1匹配的bean 翻译结果2复制译文编辑译文朗读译文返回顶部 预计至少有1匹配的bean 翻译结果3复制译文编辑译文朗读译文返回顶部 预计至少 1 匹配豆 翻译结果4复制译文编辑译文朗读译文返回顶部 预期至少1选配豆 翻译结果5复制译文编辑译文朗读译文返回顶部 ...
这个demo来说明怎么排查一个常见的spring expected single matching bean but found 2的异常。 https://github.com/hengyunabc/spring-boot-inside/tree/master/demo-expected-single 调试排查 expected single matching bean but found 2 的错误 把工程导入IDE里,直接启动应用,抛出来的异常信息是: ...
NoUniqueBeanDefinitionException: No qualifying bean of type 'xxx' available: expected single matching bean but found 2: x,y的解决办法 一. 异常现象 在利用Spring的@Autowired注入值的时候,出现了如下异常信息: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ...
多数据源报错 expected single matching bean but found 2: xxx,xxx 问题: expected single matching bean but found 2: xxx,xxx 原因:在 Spring 容器中配置了两个类型Bean,Spring 容器将无法确定到底要用哪一个 Bean,因此异常发生了。 解决方法: 使用 @Qualifier 注释指定注入 Bean 的名称...