mybatis一个怪异的问题: Invalid bound statement (not found)

本文分析了在使用MyBatis框架时出现的InvalidBoundStatement异常原因,并提供了几种可能的解决方案,包括检查namespace、确保XML映射文件中的方法与接口一致、移除配置文件中的中文注释等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文链接:http://blog.youkuaiyun.com/on_my_way20xx/article/details/9178989 

Invalid bound statement (not found): me.tspace.pm.dao.UserDao.getUser
    at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:178)
    at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:38)
    at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:49)
    at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:42)
    at $Proxy22.getUser(Unknown Source)

........................

........................

Caused by: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for me.tspace.pm.dao.UserDao.getUser

    at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:775)
    at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:615)
    at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:608)
    at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:176)

    ... 34 more

三种情况:

1.

<mapper namespace="me.tspace.pm.dao.UserDao">  

mapper的namespace写的不对!!!注意系修改。


2.

UserDao的方法在UserDao.xml中没有,然后执行UserDao的方法会报此

3. 删除配置文件里中文的注释,保存.

4. 如果你确认没有以上问题,请任意修改下对应的xml文件,比如删除一个空行,保存.问题解决...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值