天天看点

一个变态的 “org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)” 错误

记录一个困扰我们一天多时间的错误,这个错误是由于粗心导致,但是确不容易被发现。下面一一叙述:

“org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):com.**.dao.workstation.mapper.**UserDaoMapper.getTestAdmin”

大家看到这个错误,一般都是会找*.yml文件配置看mapper路径对不对,或者是去找mapper文件的namespace和id跟dao是否匹配!如果 以上方案都没有解决的话,你可以继续往下看!激动吗?我是挺激动的,哈哈哈哈哈!大多数的解决方案你都确认了还没有解决,你有没有想过,你的文件夹建的有问题,如果你的mapper.xml文件是存放在多文件夹下面那么就可能会出现。在使用IDEA创建文件夹如果使用这种方式“sqlmap.mapper”创建文件夹,和使用“sqlmap/mapper”创建文件夹显示效果是一样的,例如:

一个变态的 “org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)” 错误

显示名字一样,还不会报错,这谁能发现呀!啊!啊!啊!啊!啊!啊!这是IDEA的机制,原因就是建文件夹的方式错误!正确的方式是“sqlmap/mapper”或者一级级的建文件。

最后,虽然这个问题正常人都不会遇到,但也是在解决问题的路上的一种思路!