MyBatis-Spring(三)--Mapped Statements collection does not contain value for...问题解决
前一篇文章我总结了一下MyBatis-Spring项目使用SqlSessionTemplate配置的用法,其实在测试过程中并不是一帆风顺,遇到了很多的问题,最主要的就是Mapped Statements collection does not contain value for...这个异常信息,具体如下:

看这句话的意思就是找不到这个方法,那肯定是配置的问题,于是我从头开始检查,我的检查项如下:
- 检查映射器配置文件中的命名空间是不是对应接口的全限定名;
- 检查映射器接口中的方法、参数、返回类型和对应mapper.xml文件中sql语句的id一致(重新复制了一下);
- 检查是否将mapper.xml文件添加到我在SqlSessionFactory(spring中配置)中配置的configLocation值对应的MyBatis配置文件中;
- 检查我传入SqlSessionTemplate中的sql路径是否是命名空间+sqlId;
- 检查在SqlSessionFactory(spring中配置)中配置的configLocation值是不是我配置的mybatis配置文件;
以上的检查项可以说是很全了,但是再次测试,问题依然存在,我真的是脑瓜疼,于是决定不跟它硬碰了,大晚上,还是看看剧好了,于是刷完剧呼呼大睡去了,直到今天早上起来,开始再一次面对这个可恶的bug。其实我上面的mybatis配置文件是mybatis-config2.xml,专门为了测试这种方式新建的,还有另外一个MyBatis-config.xml文件,这是测试其他功能建的,按理说我在我的spring中配置的是mybatis-config2.xml这个,所以MyBatis-config.xml里面的配置是不会影响我测试的,但我还是抱着试一试的心态将我的mapper.xml文件放了一份在MyBatis-config.xml里面,测试了一下,哎,好了!!!于是我想难道其作用的是这个文件,于是我把mybatis-config2.xml,也就是真正使用的,这里面的mapper.xml文件注释掉,再次测试,问题又出现了!!所以说即便我用的是mybatis-config2.xml,但是在另一个mybatis-config.xml中也要引入mapper.xml文件,反正就这样解决了,虽然我觉得不太合理,但是没办法,就是这么神奇!
MyBatis-Spring(三)--Mapped Statements collection does not contain value for...问题解决的更多相关文章
- mybatis报错Mapped Statements collection does not contain value for com.inter.IOper
首页 > 精品文库 > mybatis报错Mapped Statements collection does not contain value for com.inter.IOper m ...
- MyBatis中出现Mapped Statements collection does not contain value
引用csdn上一大神的解决方法: 经过排查,解决上述异常的过程如下: 1.确定xml文件中<mapper namespace=""/>中的namespace是否路径正确 ...
- Mybatis报错——Mapped Statements collection already contains value for
解决办法: 看看你的mybatis-config.xml <mappers> <mapper resource="mapper/SeckillDao.xml&quo ...
- Spring+Mybatis整合报错Mapped Statements collection does not contain value原因之一
报错如下: ### Error updating database. Cause: java.lang.IllegalArgumentException: Mapped Statements coll ...
- maven工程下整合spring+mybatis报Mapped Statements collection does not contain value for spring-mybatis-user-get错误
在整合spring+mybatis报了下面的错误: Mapped Statements collection does not contain value for spring-mybatis-use ...
- 总结在ssm整合中,Mybatis出现Mapped Statements collection already contains value for xxxxx的解决方案
先贴一段报错信息: 前面的都不是很重要,看最后灰色标注的那段.... 严重: 异常将上下文初始化事件发送到类的侦听器实例.[org.springframework.web.context.Contex ...
- Springboot+Mybatisplus替换mybatis整合报错Mapped Statements collection does not contain value
问题一: mybatisPlus完全兼容mybatis,一般来说直接替换掉就可以了,如果mybatis的数据源不能取消创建的话,就注掉mybatisplus的数据源 //@Configurationp ...
- mybatis mapper.xml 写关联查询 运用 resultmap 结果集中 用 association 关联其他表 并且 用 association 的 select 查询值 报错 java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for mybatis.map
用mybaits 写一个关联查询 查询商品表关联商品规格表,并查询规格表中的数量.价格等,为了sql重用性,利用 association 节点 查询 结果并赋值报错 商品表的mapper文件为Gooo ...
- 搭建Mybatis 出现 Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for mapper.BatchCustomer.findBatchCustomerOneToOne
Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection doe ...
随机推荐
- P1977 出租车拼车
P1977 出租车拼车 题目背景 话说小 x 有一次去参加比赛,虽然学校离比赛地点不太远,但小 x 还是想坐 出租车去.大学城的出租车总是比较另类,有“拼车”一说,也就是说,你一个人 坐车去,还是一堆 ...
- 杂项-IM:IM(即时通讯),一种基于互联网的即时交流消息的业务
ylbtech-杂项-IM:IM(即时通讯),一种基于互联网的即时交流消息的业务 即时通讯(Instant Messaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出 ...
- day23_4_hashlib
#!/usr/bin/env python # -*- coding:utf-8 -*- # ----------------------------------------------------- ...
- Windows的哈希
Windows中有几种不同类型的哈希值,它们可能非常混乱. 可以在这两篇文章<LM, NTLM, Net-NTLMv2, oh my!>和<LM Hash and NT Hash & ...
- JS规则 是非颠倒(逻辑非操作符)"!"是逻辑非操作符,也就是"不是"的意思,非真即假,非假即真
是非颠倒(逻辑非操作符) "!"是逻辑非操作符,也就是"不是"的意思,非真即假,非假即真.好比小华今天买了一个杯子,小明说:"杯子是白色的" ...
- Python全栈开发:装饰器实例
#!/usr/bin/env python # -*- coding;utf-8 -*- """ 1.将outer函数放入内存 2.遇见@ + 函数名,则将该函数转换为装 ...
- Android开发 获取视频中的信息(例如预览图或视频时长) MediaMetadataRetriever媒体元数据检索器
前言 在Android里获取视频的信息主要依靠MediaMetadataRetriever实现 获取最佳视频预览图 所谓的最佳就是MediaMetadataRetriever自己计算的 /** * 获 ...
- python csv write 乱码
参考 : https://www.zhihu.com/question/34201726 1.使用utf_8_sig with open('d:/file.csv', 'w', encoding='u ...
- 用shell编写小九九乘法表程序
1.使用for循环 运行结果: 2.方法二:for循环 运行结果: 备注: 1. echo -n 的意思是不自动换行,因为在linux shell中 echo到最后一个字符时会自动换行的,所以echo ...
- string、char* 、int数据类型相互转换
string类型转换成char*类型,这里一般有以下三种方法: 1.c_str()方法 string name="Qian"; char *str=(char*)name.c_st ...