飙血推荐
  • HTML教程
  • MySQL教程
  • JavaScript基础教程
  • php入门教程
  • JavaScript正则表达式运用
  • Excel函数教程
  • UEditor使用文档
  • AngularJS教程
  • ThinkPHP5.0教程

spring依赖注入单元测试:expected single matching bean but found 2

时间:2021-12-14  作者:匿名  

异常信息:域名域名tisfiedDependencyException:

Caused by: 域名域名chBeanDefinitionException: No unique bean of type [域名.域名域名uteActivityService] is defined: expected single matching bean but found 2: [executeActivityService, executeActivityForTesterService]

@Qualifier
@Autowired是根据类型进行自动装配的。在上面的例子中,如果当Spring上下文中存在不止一个UserDao类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存在UserDao类型的bean,也会抛出BeanCreationException异常。我们可以使用@Qualifier配合@Autowired来解决这些问题。
1. 可能存在多个UserDao实例

@Autowired  
public void setUserDao(@Qualifier("userDao") UserDao userDao) {  
    域名Dao = userDao;  
}

这样,Spring会找到id为userDao的bean进行装配。
2. 可能不存在UserDao实例

@Autowired(required = false)  
public void setUserDao(UserDao userDao) {
湘ICP备14001474号-3  投诉建议:234161800@qq.com   部分内容来源于网络,如有侵权,请联系删除。