spring整合mybatis,在dao层我们只写一个接口,配置相应的*mapper.xml文件,

报如下错误:

 1 org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'helloController': Unsatisfied dependency expressed through field 'helloService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'helloService': Unsatisfied dependency expressed through field 'helloMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.aopeng.quest.dao.IHelloMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
 2     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:588)
 3     at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
 4     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:366)
 5     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264)
 6     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)
 7     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
 8     at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
 9     at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
10     at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
11     at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
12     at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)
13     at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)
14     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
15     at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443)
16     at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325)
17     at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
18     at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4727)
19     at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5189)
20     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
21     at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:724)
22     at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:700)
23     at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
24     at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1702)
25     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
26     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
27     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
28     at java.lang.reflect.Method.invoke(Method.java:498)
29     at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
30     at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
31     at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
32     at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
33     at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
34     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
35     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
36     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
37     at java.lang.reflect.Method.invoke(Method.java:498)
38     at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
39     at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
40     at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
41     at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
42     at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
43     at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
44     at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)
45     at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
46     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
47     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
48     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
49     at java.lang.reflect.Method.invoke(Method.java:498)
50     at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:324)
51     at sun.rmi.transport.Transport$1.run(Transport.java:200)
52     at sun.rmi.transport.Transport$1.run(Transport.java:197)
53     at java.security.AccessController.doPrivileged(Native Method)
54     at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
55     at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
56     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
57     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
58     at java.security.AccessController.doPrivileged(Native Method)
59     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
60     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
61     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
62     at java.lang.Thread.run(Thread.java:745)
63 Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'helloService': Unsatisfied dependency expressed through field 'helloMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.aopeng.quest.dao.IHelloMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
64     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:588)
65     at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
66     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:366)
67     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264)
68     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)
69     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
70     at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
71     at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
72     at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
73     at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
74     at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208)
75     at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138)
76     at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
77     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:585)
78     ... 60 more
79 Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.aopeng.quest.dao.IHelloMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
80     at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1493)
81     at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1104)
82     at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
83     at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:585)
84     ... 73 more

起始这是由于一个低级错误引起的,在applicationContext.xml中有如下的配置:

1 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
2          <property name="basePackage" value="com.xxx.xxx.dao.**.*" />
3          <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
4 </bean>

basePackage的value应该是指定包名,而我指定的文件名。

改成如下配置,编译正常通过:

1 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
2          <property name="basePackage" value="com.xxx.xxx.dao" />
3          <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
4 </bean>

转载于:https://www.cnblogs.com/feiyujun/p/7725319.html

解决spring mybatis 整合后mapper接口注入失败相关推荐

  1. 【已解决】关于Mapper接口、service接口注入失败原因

    背景: 1.使用maven分模块构建SSM工程 2.没有mybatis映射文件和核心配置文件 3.(2)中的配置都在spring配置中 错误信息 Error creating bean with na ...

  2. mybatis如何根据mapper接口生成其实现类

    SpringBoot集成mybatis mybatis的statement的解析与加载 mybatis如何根据mapper接口生成其实现类 mybatis的mapper返回map结果集 mybatis ...

  3. java spring+mybatis整合实现爬虫之《今日头条》搞笑动态图片爬取

    java spring+mybatis整合实现爬虫之<今日头条>搞笑动态图片爬取(详细) 原文地址原博客地址 先上效果图 抓取的动态图: 数据库: 一.此爬虫介绍 今日头条本身就是做爬虫的 ...

  4. springMVC+Spring+mybatis整合配置版与注解版

    springMVC+Spring+mybatis整合 , 使用配置版来完成: -----------------------------前端 1.创建web系统,导入jar包: spring的jar包 ...

  5. Spring整合MyBatis原理之Mapper接口和xml文件的解析

    目录 1. 前言 2. 类 `SqlSessionFactoryBean` 2.1. 实现了 `FactoryBean` 接口的 `getObject()` 2.2. `buildSqlSession ...

  6. 解决Spring boot整合mybatis,xml资源文件放置及路径配置问题

    一:问题描述 1:前言 无论你是将mapper.xml文件是和resources建造在一块,还是将mapper.xml文件和mapper放在一块,我们只要修改在yaml当中的mapper-locati ...

  7. 关于mapper接口注入spring容器

    mapper是接口,而接口时不能注入spring容器的,要注入就需要接口有对应的实现类,注入的应该是实现类而不是接口 而在spring中,导入MyBatis-Spring包之后,MyBatis-Spr ...

  8. mybatis学习(十一)——springmvc++spring+mybatis整合

    做任何一个项目都以一个需求,这里先定义一下需求:利用三大框架查询酒店列表. 一.搭建开发环境 1.创建一个web项目 我这里用的是 jdk1.8+tomact7.0 2.创建hotel表 CREATE ...

  9. 保姆级Spring+Mybatis整合的简单增删改查功能实现

    Springboot和Mybatis整合实现增删改查等 0.文章中pageHelper相关的操作是分页查询的东西与本文无关 1.首先创建一个Springboot的项目 1.1Java一般选择的是8,看 ...

最新文章

  1. C++ 之虚函数的实现原理
  2. Google MapReduce到底解决什么问题?
  3. Redis:master/slave、sentinel、Cluster简单总结
  4. Rsync的使用方法
  5. mysql服务器的字符集
  6. js多个物体运动问题2
  7. 蓝牙sbc怎么解决_【科普】蓝牙音频常用的编解码格式
  8. linux捕获鼠标点击事件文件,Linux捕捉鼠标事件和键盘事件的方法
  9. 怎样将PDF中指定页面方向进行旋转
  10. 【转】Keil、uVision、RealView、MDK、Keil C51之间的区别比较
  11. steam动态令牌源码(python版本)
  12. 荔枝派Zero小白(一)
  13. winfrom 实现条形码批量打印以及将条形码信息生成PDF文件
  14. 2021年6月大学英语六级翻译
  15. ch1_系统启动_setup.S
  16. 聊聊 API 网关的作用
  17. 用计算机演奏破茧,用6个“破茧”而出的故事,惊艳世界!
  18. Word打印预览只能显示一半?
  19. html css分块,web学习第二课,HTML+CSS样式+div分块
  20. Redis-Redis 主从架构

热门文章

  1. C# ToString() 参数大全
  2. EmitMapper,AutoMapper,NLiteMapper和手工映射性能大比拼
  3. 桌面虚拟化之本地模式(离线模式)大比拼
  4. 采用install.sh安装脚本进行快速安装astercc
  5. TCP慢开始与拥塞避免
  6. 华为交换机S5700系列配置通过STelnet登录设备示例
  7. 程序猿应该记住的几条基本规则
  8. VM虚拟机Linux克隆后网卡的相关操作
  9. Linux性能及调优指南(翻译)
  10. Struts2文件上传与下载