零、问题

项目(基于Spring Cloud)在正常启动的情况下是没问题的,但是一运行单元测试就报 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)


一般来说这是没有找到Mapper.xml文件导致的,但是很奇怪,只有在单元测试的时候才会出现这个问题。


一、解析

经过排查发现,项目中为了图方便,把常用的配置写在了一个properties里,其中有一段:

mybatis.mapper-locations=classpath*:tech/xunyi/cloud/*/dao/mapper/*Mapper.xml

这样写,在正常启动时不会有什么问题,但是在单元测试的时候就会找不到配置文件


二、解决方案

因为我的配置文件,是存在git上面,通过Config Server获取的,所以需要在对应的配置文件中加入具体的Mybatis配置文件路径,比如:

mybatis.mapper-locations=classpath*:tech/xunyi/cloud/sign/dao/mapper/*Mapper.xml


到此,问题解决,单元测试中可以调用到数据库了


赞助本站,网站的持续发展离不开你们的支持!一分也是爱ヾ(◍°∇°◍)ノ゙
 本文链接: ,花了好多脑细胞写的,转载请注明链接喔~~
登陆
      正在加载评论