项目正常单元测试错误 java.lang.IllegalArgumentException: Mapped Statements collection does not contain value


使用Junit单元测试时发现问题,项目能正常运行,但是单元测试一直报错如下

java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.ss.tmall.mapper.PropertyMapper.selectByPrimaryKey

求助度娘查找

1.namespace写错,或者各种检查配置文件

2.jdk降级1.8降级1.7

3.spring升级4.2,junit升级

如上三种方法都没有解决这个问题

后来怀疑是 ,如下这个配置作祟,

<property name="mapperLocations" value="classpath:mapper/*.xml"/>

为什么呢?是java下的mapper包和resource下的mapper包重名,会默认扫描java下的mapper包。目录结构如下,那将resource路径下的mapper包改为imapper,同时修改spring-Mybatis配置文件 appliciationContext.xml 为imapper


再次执行propertymapper 单元测试,成功



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值