mybatis封装dao servcie时碰到expected single matching bean but found 2:

原创 2015年11月19日 15:08:33
</pre>package com.levelappro.web.core.common.service;import java.util.List;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.transaction.annotation.Transactional;import com.levelappro.web.core.common.mybatis.dao.IMybatisBaseDao;import com.levelappro.web.core.common.mybatis.query.MybatisExample;import com.levelappro.web.core.common.page.PageList;/** * DAO支持类实现 *  * @author ThinkGem * @version 2013-05-15 * @param <T> */@Transactional(readOnly = true)public abstract class IMybatisService<Dao extends IMybatisBaseDao<T>, T> {<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 持久层对象<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>@Autowired<span style="white-space:pre">	</span>protected Dao dao;<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 获取单条数据<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param id<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public T getById(String id) {<span style="white-space:pre">		</span>return dao.getById(id);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 查询所有数据列表<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param entity<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public List<T> findAll() {<span style="white-space:pre">		</span>return dao.findAll();<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 分页查询<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param entity<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public PageList<T> findByPage(MybatisExample example, PageList<T> page) {<span style="white-space:pre">		</span>List<T> list = dao.findByPage(example);<span style="white-space:pre">		</span>page.setResultList(list);<span style="white-space:pre">		</span>page.setTotalCount(dao.count(example));<span style="white-space:pre">		</span>return page;<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 插入数据<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param entity<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public int insert(T entity) {<span style="white-space:pre">		</span>return dao.insert(entity);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 更新数据<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param entity<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public int update(T entity) {<span style="white-space:pre">		</span>return dao.update(entity);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 删除数据<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param id<span style="white-space:pre">	</span> * @see public int delete(T entity)<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public int delete(T entity) {<span style="white-space:pre">		</span>return dao.delete(entity);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 批量删除<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param list<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public int deleteBatch(final List<T> list) {<span style="white-space:pre">		</span>return dao.deleteBatch(list);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 查询总数<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public int count(MybatisExample example) {<span style="white-space:pre">		</span>return dao.count(example);<span style="white-space:pre">	</span>}<span style="white-space:pre">	</span>/**<span style="white-space:pre">	</span> * 条件查询所有数据列表(不分页)<span style="white-space:pre">	</span> * <span style="white-space:pre">	</span> * @param entity<span style="white-space:pre">	</span> * @return<span style="white-space:pre">	</span> */<span style="white-space:pre">	</span>public List<T> findList(MybatisExample example) {<span style="white-space:pre">		</span>return dao.findList(example);<span style="white-space:pre">	</span>}<p>}</p><p></p><p>一开始这样设计baseservice,结果继承它的时候,启动报这个错,expected single matching bean but found 2:iLinksDao </p><p>iOrigsvrinfoDao注解不能用。。。。<span style="color: rgb(51, 51, 51); font-family: arial, 宋体, sans-serif, tahoma, 'Microsoft YaHei'; font-size: 14px; line-height: 24px; background-color: rgb(243, 255, 236);">因为你的接口有多个不同的实现类,spring容器不知道要给你注入哪个</span>网上找的加<span style="white-space:pre">	</span>@Qualifier也不管用。</p><p>没办法 最后只能改成这样,不使用注解</p><p><pre name="code" class="java">/**
	 * 持久层对象
	 */
	// @Autowired
	// protected Dao dao;
	public abstract IMybatisBaseDao<T> getDao();

	/**
	 * 获取单条数据
	 * 
	 * @param id
	 * @return
	 */
	public T getById(String id) {
		return this.getDao().getById(id);
	}
。。。继承这个baseService给dao
@Service
@Transactional
public class LinksService extends IMybatisService<Links>{

	@Autowired
	private ILinksDao iLinksDao;

	@Override
	public IMybatisBaseDao<Links> getDao() {
		return iLinksDao;
	}

}
还不知道用@Autowired 的话怎么解决那个问题,在研究下。。。。



spring注解错误-expected single matching bean but found 2

早上遇到一个错误,单元测试的时候一直提示expected single matching bean but found 2: productParamServiceImp,productParamSe...
  • ggj20ss
  • ggj20ss
  • 2015年11月03日 11:12
  • 1537

问题:expected single matching bean but found 2

问题:严重: Exception sending context initialized event to listener instance of class org.springframework...
  • u011008029
  • u011008029
  • 2017年03月29日 17:07
  • 1128

深入Spring Boot:怎样排查expected single matching bean but found 2的异常

写在前面这个demo来说明怎么排查一个常见的spring expected single matching bean but found 2的异常。https://github.com/hengyun...
  • hengyunabc
  • hengyunabc
  • 2017年12月09日 22:12
  • 390

开发:异常收集之 expected single matching bean but found 2

今天写完两个service实现,启动项目发现了这个错 expected single matching bean but found 2: [oldFrSplittinglogService...
  • shijing266
  • shijing266
  • 2014年08月27日 19:25
  • 6714

spring boot+mybatis 多数据源报错 expected single matching bean but found

spring boot 多数据源配置     No qualifying bean of type [javax.sql.DataSource] is defined: expect...
  • zzjjiandan
  • zzjjiandan
  • 2017年12月12日 16:44
  • 182

遇到问题---MongoDB---配置多数据源报错expected single matching bean but found 2

MongoDB需要配置多数据源 配置如下:spring-mongodb.xml为:
  • q383965374
  • q383965374
  • 2017年08月14日 15:02
  • 867

使用dubbo对外暴露接口,实现类同时实现两个接口后 @Autowire失败,提示expected single matching bean but found 2解决方案

当使用dubbo对外暴露接口时,为了方便继承和实现底层方法,另一方面专门对外提供一套接口方法,这时接口实现类同时实现了两个接口: @Service("ICentAccountInfoService")...
  • paradise003
  • paradise003
  • 2016年06月02日 17:06
  • 8554

expected single matching bean but found 2 注解继承冲突

如果业务类继承了工具类,那么当有另一个业务类的时候就会找到2个bean类,所以要指定明确的类 在实现类上指定bean的名称  设置value 和 name @Service(value = "gene...
  • hraceo
  • hraceo
  • 2013年09月09日 10:48
  • 2990

Spring的JUnit错误:NoSuchBeanDefinitionException: No unique bean of type,expected single matching bean but found 2 [dataSource1,data

当配置文件中有两个spring datasource时,利用Spring的JUnit测试会报如下错误:NoSuchBeanDefinitionException: No unique bean of ...
  • gtuu0123
  • gtuu0123
  • 2010年01月23日 12:36
  • 10747

No unique bean of type is defined: expected single bean but found 0

http://stackoverflow.com/questions/20641932/no-unique-bean-of-type-is-defined-expected-single-bean-b...
  • tangwenwuacer
  • tangwenwuacer
  • 2015年07月10日 19:09
  • 1335
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mybatis封装dao servcie时碰到expected single matching bean but found 2:
举报原因:
原因补充:

(最多只允许输入30个字)