zoukankan      html  css  js  c++  java
  • Maven项目mybatis Invalid bound statement (not found)解决方法

    最近因为工作需要,要学习mybatis框架。在添加好一些依赖之后,通过mybatis进行数据库的crud操作。但是在测试的时候总是报mybatis:Invalid bound statement (not found)。在网上搜索了好久,最后终于发现了问题的所在,现在把它记录下来,供大家参考:

    在mapper代理的开发中,程序员需要遵守一些规范,mybatis才能实现mapper接口的代理对象。 
    它的规范如下:

    • mapper.xml的namespace要写所映射接口的全称类名。
    • mapper.xml中的每个statement的id要和接口方法的方法名相同
    • mapper.xml中定义的每个sql的parameterType要和接口方法的形参类型相同
    • mapper.xml中定义的每个sql的resultType要和接口方法的返回值的类型相同
    • mapper.xml要和对应的mapper接口在同一个包下
    • mapper.xml的命名规范遵守: 接口名+Mapper.xml

    如果以上检查完毕,项目都遵守了上述的规范,而且你的项目是Maven项目。但是运行程序还是会出现Mybatis invalid bound statement(not found)的问题,这个时候就需要修改pom.xml文件了。在pom.xml中添加如下的代码:

     1 <build>    
     2         <resources>
     3             <resource>
     4                 <directory>src/main/java</directory>
     5                 <!-- 此配置不可缺,否则mybatis的Mapper.xml将会丢失 -->
     6                 <includes>
     7                     <include>**/*.xml</include>
     8                 </includes>
     9             </resource>
    10             <!--指定资源的位置-->
    11             <resource>
    12                 <directory>src/main/resources</directory>
    13             </resource>
    14         </resources>
    15     </build>

    将以上代码添加到pom.xml中,运行项目,问题解决。

    转载: https://blog.csdn.net/qasrc6/article/details/52796323
  • 相关阅读:
    Java中“==”与equals的区别以及equals方法的重写
    Java中的Switch....case语句:
    Java中的基本数据类型
    HTTP与HTTPS的区别
    深入理解HTTP协议、HTTP协议原理分析
    IntelliJ IDEA下的使用git
    Spring RestTemplate详解
    Java 适配器(Adapter)模式
    LINUX的ssh免密码配置
    CDH6.2安装配置第一篇:CDH配置本地http服务
  • 原文地址:https://www.cnblogs.com/guochunyang2004/p/8664712.html
Copyright © 2011-2022 走看看