继承 通用Mapper,自定接口注入失败

报错内容

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dynamicFormContentServiceImpl': Unsatisfied dependency expressed through field 'mapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.cofe.ssm.mapper.base.CofeBaseMapper<com.cofe.common.pojo.DynamicFormContent>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.cofe.ssm.mapper.base.CofeBaseMapper<com.cofe.common.pojo.DynamicFormContent>' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

spring配置

<bean class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="basePackage" value="com.cofe.ssm.mapper"/>
    <property name="markerInterface" value="com.cofe.ssm.mapper.base.CofeBaseMapper"/>
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
    <property name="properties">
        <value>
            mappers=tk.mybatis.mapper.common.Mapper,com.cofe.ssm.mapper.base.CofeBaseMapper
        </value>
    </property>
</bean>

自定义接口

public interface CofeBaseMapper<T> extends BaseMapper<T>,IdsMapper<T>,Marker {
}

框架版本

spring 4.1.3.RELEASE
mybatis 3.2.8
mybatis.spring  1.2.2
tk.mybatis 3.3.8

配置参照官方文档来的,但是就是报错,找不到原因,求大佬帮助

项目demo下载 https://pan.baidu.com/s/1nvKaIBB 密码:cofe

阅读 7.7k
1 个回答

改成这样试试

    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.cofe.ssm.mapper" />
        <property name="sqlSessionFactoryBeanName" value="sessionFactory"/>
    </bean>

    <bean class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.cofe.ssm.mapper"/>
        <property name="properties">
            <value>
                 mappers=tk.mybatis.mapper.common.Mapper
            </value>
        </property>
    </bean>
    
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题