org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

简介: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.dao.mapper.UserInfoMapper.
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.dao.mapper.UserInfoMapper.countByExample
        at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:196)
        at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:44)
        at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:59)
        at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
        at com.sun.proxy.$Proxy93.countByExample(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
        at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java

报错原因是Mapper.xml文件中没有id为countByExample的语句

 

如果出现:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

一般的原因是Mapper interfacexml文件的定义对应不上,需要检查包名namespace函数名称等能否对应上,需要比较细致的对比,
我经常就是写错了一两个字母搞的很长时间找不到错误

按以下步骤一一执行:

1:检查xml文件所在的package名称是否和interface对应的package名称一一对应

2:检查xml文件的namespace是否和xml文件的package名称一一对应

3:检查函数名称能否对应上

4:去掉xml文件中的中文注释

5:随意在xml文件中加一个空格或者空行然后保存

一般来说到此就可以排除错误了

http://blog.csdn.net/softwarehe/article/details/8889206

 

mybatis Mapper插件中,updateByPrimaryKey 方法在使用时,入参必须包含id,
实际使用的sql如下:

2016-11-14 11:23:18.885 DEBUG 640 --- [ main] t.m.s.m.U.updateByPrimaryKey : ==> Preparing: UPDATE user_info SET username = ?,password = ?,usertype = ?,enabled = ?,qq = ?,email = ?,tel = ? WHERE Id = ?
2016-11-14 11:23:18.915 DEBUG 640 --- [ main] t.m.s.m.U.updateByPrimaryKey : ==> Parameters: test1(String), 12345678(String), 1(String), null, null, null, null, null
2016-11-14 11:23:18.924 DEBUG 640 --- [ main] t.m.s.m.U.updateByPrimaryKey : <== Updates: 0

 

如果只想更新指定字段的值,可以使用api:   userInfoMapper.updateByPrimaryKeySelective

    /**
     * 根据主键更新属性不为null的值
     *
     * @param record
     * @return
     */
    @UpdateProvider(type = BaseUpdateProvider.class, method = "dynamicSQL")
    int updateByPrimaryKeySelective(T record);

 

相关文章
|
1月前
|
Java 数据库连接 mybatis
解决Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: No constructor found
解决Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: No constructor found
81 1
|
5月前
org.apache.ibatis.builder.BuilderException: An invalid property ‘jdbcType ‘ was found in mapping
org.apache.ibatis.builder.BuilderException: An invalid property ‘jdbcType ‘ was found in mapping
|
6月前
|
XML Java 数据库连接
【异常解决】解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
【异常解决】解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
107 0
|
8月前
|
XML 前端开发 Java
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)异常
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)异常
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)异常
|
9月前
|
SQL Java 数据库连接
nested exception is org.apache.ibatis.binding.BindingException: Parameter ‘‘ not found. Ava
用mybatis写注解SQL的执行报错,这个报错有很多原因就不说了,说一下我的问题 同一个mapper中方法有重名的,虽然编译没报错,相当于重载了,但是执行的时候就报错了 方法写的太多了都没注意
|
10月前
|
SQL XML Java
org.apache.ibatis.binding.BindingException: Parameter ‘startTime‘ not found. Available parameters
org.apache.ibatis.binding.BindingException: Parameter ‘startTime‘ not found. Available parameters
106 0
|
10月前
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
82 0
|
10月前
|
XML 数据格式
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
125 1
|
29天前
|
消息中间件 API Apache
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
本文整理自阿里云开源大数据平台徐榜江 (雪尽),关于阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会。
1255 1
官宣|阿里巴巴捐赠的 Flink CDC 项目正式加入 Apache 基金会
|
1月前
|
SQL Java API
官宣|Apache Flink 1.19 发布公告
Apache Flink PMC(项目管理委员)很高兴地宣布发布 Apache Flink 1.19.0。
1125 1
官宣|Apache Flink 1.19 发布公告

热门文章

最新文章

推荐镜像

更多