zoukankan      html  css  js  c++  java
  • myBatis中Invalid bound statement (not found)错误

    环境:Idea、ssm、maven

    由于使用maven的原因,maven不会扫描到mapper的xml文件所以会出现此类问题。

    每次走到mapper方法时就抛异常:Invalid bound statement (not found)。这个问题找了好长时间,最后还是把mapper的xml文件放在了项目中的resource文件夹下,并修改配置中相应的路径才得以解决。

    解决办法:

    第一种方式:将mapper的xml文件放在resource文件夹下。

    第二种方式:

    在pom.xml文件中的build标签下加入

    <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
    </resources>

    如果不是这个原因,请检查配置是否错误,逐一排查。其他原因导致此问题解决参考:
    1.

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

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

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

    3. UserDao的方法返回值是List<User>,而select元素没有正确配置ResultMap,或者只配置ResultType!

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

  • 相关阅读:
    分层领域模型
    JAVA集合Set 交集、差集、并集
    http状态码301和302详解及区别
    设计模式(16) 命令模式
    设计模式(15) 解释器模式
    设计模式(14) 模板方法模式
    设计模式(13) 职责链模式
    设计模式(12) 代理模式
    设计模式(11) 享元模式
    设计模式(10) 外观模式
  • 原文地址:https://www.cnblogs.com/super-chao/p/8259294.html
Copyright © 2011-2022 走看看