SSM-报错信息-org.apache.ibatis.binding.BindingException: Invalid bound statement (not found...

这篇博客详细分析了SSM框架中出现的'org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)'错误。错误源于MyBatis在XML映射文件和Mapper接口之间无法找到对应的方法。作者列举了两种典型错误情况:一是方法名拼写错误导致的报错;二是Maven打包后,IntelliJ IDEA未能正确识别XML资源文件,需在pom.xml中配置资源包含。
摘要由CSDN通过智能技术生成

报错分析

要详细分析信息,由此我们可知报错是有mybatis发出;
其次,是由于报错信息在xml和mapper之间找不对对应的方法.

第一种错误情况

下面的select id = QueryBmp 写成了bmpService因而程序报错,找不到QuerBmp方法

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="chinatelecom.dao.bmpMapper" >
    <select id="QueryBmp" resultMap="bmp">
        select * from sheet1
    </select>
    <resultMap id="bmp" type="bmp">
        <result property="ID" column="ID" />
        <result property="SUBJECT" column="SUBJECT" />
        <result property="USERID" column="USERID" />
        <result property="USERNAME" column="USERNAME" />
        <result property="MESSAGETYPE" column="MESSAGETYPE" />
        <result property="CONTENT" column="CONTENT" />
        <result property="SENDTIME" column="SENDTIME" />
        <result property="CANREPLY" column="CANREPLY" />
    </resultMap>
</mapper>

第二种错误情况:

通过maven打包后,intellj 的编译过程找不到xml文件,即使你在工程目录中能看到xml,但这是maven项目,需要在pom.xml中加入资源。

        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.hnguigu.ssm.mapper.MenuDao.selectByEx 是一个MyBatis框架中的异常信息,它表示绑定的语句无效(找不到)。具体来说,这个异常通常是由于以下原因引起的: 1. 绑定的语句(mapper中定义的SQL语句)不存在。可能是语句的名称拼写错误或者没有在mapper文件中定义。 2. mapper文件没有正确加载或者配置。可能是mapper文件的位置不正确或者没有在MyBatis的配置文件中进正确的配置。 3. mapper接口或者XML文件没有正确的命名空间。命名空间应该与mapper接口或者XML文件的路径对应。 4. mapper接口或者XML文件没有正确的引入或者导入。可能是缺少import语句或者没有在配置文件中引入mapper接口或者XML文件。 为了解决这个问题,你可以按照以下步骤进排查: 1. 确认com.hnguigu.ssm.mapper.MenuDao.selectByEx这个语句在mapper文件中是否存在,并且名称拼写是否正确。 2. 检查MyBatis的配置文件(通常是mybatis-config.xml),确保mapper文件已经正确配置,例如使用<mappers>标签引入mapper文件。 3. 检查mapper接口或者XML文件的命名空间是否与mapper接口或者XML文件的路径对应。 4. 如果使用了XML文件进SQL语句的定义,确保在XML文件中正确引入其他的XML文件或者使用import语句导入其他的XML文件。 5. 检查是否有其他相关的错误信息或者异常信息提供更多的线索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值