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

本文解决Maven项目中MyBatis环境配置时遇到的BindingException异常,详细介绍了如何确保mapper配置文件被正确扫描及编译,避免sql语句更新后不生效的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在用maven配置mybatis环境时出现BindingExceptiony异常,发现在classes文件下没有mapper配置文件,应该是maven项目没有扫描到mapper包下的xml文件。

另:idea下,修改xxxMapper.xml中sql语句,重启项目发现还是执行之前的sql,原因是idea没有重新编译xxxMapper.xml文件,在pom中加上代码可同样解决。

在pom.xml中加入一下代码可以解决:

<build>
    <resources>  
      <!-- maven项目中src源代码下的xml等资源文件编译进classes文件夹,
        注意:如果没有这个,它会自动搜索resources下是否有mapper.xml文件,
        如果没有就会报org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)-->
      <resource>  
        <directory>src/main/java</directory>  
        <includes>  
          <include>**/*.xml</include>  
        </includes>  
      </resource>  

      <!--将resources目录下的配置文件编译进classes文件  -->  
      <resource>
            <directory>src/main/resources</directory>
      </resource>
    </resources>  
  </build>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值