首页 java三层 spring依赖注入单元测试:expected single matching bean but found 2

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

异常信息:org.springframework.beans.factory.UnsatisfiedDependency…

异常信息:org.springframework.beans.factory.UnsatisfiedDependencyException:

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.mes.bussiness.service.siteoperation.activity.ExecuteActivityService] 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) {  
    this.userDao = userDao;  
}

 

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

@Autowired(required = false)  
public void setUserDao(UserDao userDao) {

 

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

Hibernate 中对象 set 属性时自动保存入库的问题

Hibernate 中对象 set 属性时自动保存入库的问题

遇到这个问题了 背景 在某个项目中,通过 Heibernate 查出某个对象后,对属性进行了 set 操作,并没有进行 ...
hibernate中@DynamicInsert和@DynamicUpdate

hibernate中@DynamicInsert和@DynamicUpdate

在Hibernate中可以利用@DynamicInsert和@DynamicUpdate生成动态SQL语句,即在插入和修...
redis简单命令

redis简单命令

linux进入redis redis-cli -p 6379 查询 config get requirepass # 对...
“”字符串解析为date报错

“”字符串解析为date报错

  Spring3MVC中Controller层接受前端页面的参数有一种情况: @RequestMapping...
Restrictions 非空验证

Restrictions 非空验证

Hibernate-Restrictions用法 Restrictions or用法   criteria.a...
返回顶部