.在使用maven整合mybatis时出现数据绑定错误:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
解释:就是说,你的Mapper接口,被Spring注入后,却无法正常的使用mapper.xml的sql;
这里的Spring注入后的意思是,你的接口已经成功的被扫描到,但是当Spring尝试注入一个代理(MyBatist实现)的实现类后,却无法正常使用。这里的可能发生的情况有如下几种;
接口已经被扫描到,但是代理对象没有找到,即使尝试注入,也是注入一个错误的对象(可能就是null)
接口已经被扫描到,代理对象找到了,也注入到接口上了,但是调用某个具体方法时,却无法使用(可能别的方法是正常的)
当然,我们不好说是那种情况,毕竟报错的结果是一样的,这里就提供几种排查方法:
mapper接口和mapper.xml是否在同一个包(package)下?名字是否一样(仅后缀不同)?
比如,接口名是NameMapper.java;对应的xml就应该是NameMapper.xml
mapper.xml的命名空间(namespace)是否跟mapper接口的包名一致?
比如,你接口的包名是com.abc.dao,接口名是NameMapper.java,那么你的mapper.xml的namespace应该是com.abc.dao.NameMapper
接口的方法名,与xml中的一条sql标签的id一致
比如,接口的方法List<User> findAll();那么,对应的xml里面一定有一条是<select id="findAll" resultMap="**">****</select>
如果接口中的返回值List集合,那么xml里面的配置,尽量用resultMap(保证resultMap配置正确),不要用resultType
最后,如果你的项目是maven项目,请你在编译后,到接口所在目录看一看,很有可能是没有生产对应的xml文件,因为maven默认是不编译的,因此,你需要在你的pom.xml的<build></build>里面,加这么一段:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
详细解决方案
.在使用maven整合mybatis时出现数据绑定错误:org.apache.ibatis.binding.BindingException: Invalid bound statement (not
热度:59 发布时间:2023-11-01 14:33:22.0
相关解决方案
- apache-tomcat-7.0.32下的html页面不能访问有关问题
- Ibatis sql地图执行
- ibatis sql地图 插入数据返回数据id有关问题
- 求SSM分页 struts +spring+mybatis 给小弟我发个学习学习吧 多谢大神们
- 求解 mybatis 动态sql语句 choose和if 一起用时,为什么只执行otherwise里面的Sql语句 求解
- Mybatis 自定义 Plugin(Interceptor) 研讨! 急
- struts2的property标签,碰到Attribute id invalid for tag property according to TLD
- org.apache.xerces.impl.msg.XMLMessages not loaded解决方案
- myBatis 动态生成排序有关问题
- Ibatis 查询话语selec count(*),getSqlMapClientTemplate().后面应该接什么
- org.apache.http.client.HttpClient与org.apache.commons.httpclient.HttpClient的差别
- ibatis 动态查询解决思路
- 新手问:怎么在前台显示列表纪录?框架是用struts2+spring2.5+Ibatis
- 关于java.sql.Statement.executeUpdate()的返回值,该怎么处理
- org.apache.axis.client.Service的有关问题
- MyBatis 怎么通过XML中配置的NameSpace和SQL的ID获取SQL字符串到JAVA
- struts+iBatis+mysql,该如何解决
- myeclipse集成tomcat之后,启动tomcat,一直处在Starting Servlet Engine: Apache Tomcat/6.0.14,该如何解决
- mybatis-spring编程式事务处理BUG,该如何解决
- 软件 apache-tomcat(这是一个文件)跟 单独下载apache 和 tomcat有什么区别 ?该如何处理
- spring+ibatis下报错:There is no statement named selectSQL in this SqlMap,该怎么解决
- mybatis 关联查询插入的有关问题
- 关键字条件查询分页有关问题<SpringMVC/ibatis>
- Error : Invalid path什么回事啊求解决!
- Invalid path,是咋回事?
- 运作java的时候 出现Error : Invalid path, "C:\Program Files (x86)\Java\jdk1.6.0_21\bin
- Apache Synapse ESB 怎么使用
- Maven 项目的dependency拷贝不出来解决办法
- spring struts ibatis 架构 权限控制怎么做
- ibatis 里面写sql语句的xml怎么提示