org.springframework.beans.factory.NoUniqueBeanDefinitionException 導致原因之一


導致此異常原因很多,以下僅是針對其中一種因素的解決辦法。

 

 

 

下面是DAO接口、Service接口、Service實現類的全路徑名(全部定義在com.xxx.projetc包下)

com.xxx.projetc.MyDAO;

com.xxx.projetc.MyService;

com.xxx.projetc.MyServiceImpl;

 

 

spring-dao.xml配置片段如下

<bean id="" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
  <property name="basePackage" value="com.xxx.projetc" />
</bean>

 

 

spring-service.xml配置片段如下

<!--掃描service包下所有使用注解的類型 -->
<context:component-scan base-package="com.xxx.projetc" />

 

 

由於MyDAO和MyServiceImpl全部定義在com.xxx.projetc包下,導致負責解析spring-dao.xml和spring-service.xml的相關spring框架程序重復對com.xxx.projetc進行了掃描。

解決此問題的方法是將MyDAO和MyServiceImpl分別放入不同的包,如下所示:

com.xxx.projetc.dao.MyDAO;

com.xxx.projetc.service.MyService;

com.xxx.projetc.service.impl.MyServiceImpl;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM