天天看點

關于ERROR] Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with

ERROR] Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.mybatis.spring.mapper.MapperScannerConfigurer#0' defined in class path resource [application.xml]:

這個錯誤可以說是折磨了我一下午。。。

環境:ssm整合,為了融合shiro(這個錯和shiro沒關系);

錯誤:ERROR] Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.mybatis.spring.mapper.MapperScannerConfigurer#0' defined in class path resource [application.xml]:無法建立這個bean。

配置:

<!--spring和mybatis結合-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
   <property name="dataSource" ref="dataSource"/>
   <property name="configLocation" value="classpath:mybatis.xml"/>
<!--   <property name="mapperLocations" value="classpath:com/dajie/shiro/dao/impl/*.xml"/>-->
</bean>

<!--掃描dao-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
   <property name="sqlSessionFactoryBeanName" ref="sqlSessionFactory"/>
   <!--把你的package加上-->
   <property name="basePackage" value="com.dajie.shiro.dao.impl.*.xml" />
</bean>      

注意上面代碼中的

ref="sqlSessionFactory"/>
沒錯 就是它錯了 改為 value="sqlSessionFactory"就可以了 當然 這隻是我的錯誤原因 可以參考。

下面是正确的代碼
       
<!--spring和mybatis結合-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
   <property name="dataSource" ref="dataSource"/>
   <property name="configLocation" value="classpath:mybatis.xml"/>
<!--   <property name="mapperLocations" value="classpath:com/dajie/shiro/dao/impl/*.xml"/>-->
</bean>

<!--掃描dao-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
   <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
   <!--把你的package加上-->
   <property name="basePackage" value="com.dajie.shiro.dao.impl.*.xml" />
</bean>