SpringBoot3.0升级遇到关于Invalid bound statement (not found)处理方案

前言

今天升级SpringBoot3时尝试兼容Mybatis和MybatisPlus出现多个异常。顺带写写排查方案,springboot2其实也一样用

  1. 排查方向:mapper接口中的方法名和mapper.xml中的id标签不一致
    仔细核对抛出异常的接口和xml文件名。方法名
  2. 排查方向:.mapper.xml中的namespace和实际的mapper文件不一致仔细核对抛出异常的接口和xml文件名。方法名
     
  3. 排查方向:检查扫描路径是否正确
        ①我使用的mybatis-plus,所以没有使用@MapperScan,如有配置到的小伙伴,首先检查这个配置是否和你的Mapper接口路径一直。

        ②使用mybatis-plus的小伙伴,还要检查一下yaml/yml配置文件
    mybatis-plus.mapperLocations 是否和你的xml路径一致。(注意层级哦~)
  4. 排查方向:打包文件不包含xml
    检查target文件夹下xml所在路径是否有响应的文件,如果没有在检查下pom配置


    下面是基于3.1插件和jdk17的配置
    <maven.plugin.version>3.1</maven.plugin.version>
    <java.version>17</java.version>
    <build>
         <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${maven.plugin.version}</version>
                    <configuration>
                        <skip>true</skip>
                        <source>${java.version}</source>
                        <target>${java.version}</target>
                        <encoding>${project.build.sourceEncoding}</encoding>
                    </configuration>
                </plugin>
            </plugins>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.ftl</include>
                    </includes>
                </resource>
            </resources>
        </build>

    代码结构

     还有其他几种代码结构和配置详见:SpringBoot项目整合Mybatis时Mapper.xml文件的存放位置

  5. 排查方向:少见returnType类型没有写全限定类名
  6. 其他解决方案:怀疑编译和缓存问题、基于idea的截图,Eclipse自己对照下;
    一步步来,刷新,清理,重新构建。全做完。

 总结:一定要注意大小写,名称字母是否完全一致,缺字母的导致名称不对应,各种路径错误,你们自己面壁去;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值