mybatis中集成sharing-jdbc采坑

Posted sky-chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis中集成sharing-jdbc采坑相关的知识,希望对你有一定的参考价值。

1. mybatis中集成sharing-jdbc采坑

1.1. 错误信息

Caused by: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

1.2. 出现场景

  • 我用的mybatis-plus,现在要把ShardingSphere也就是sharing-jdbc集成进来,java集成方式没问题,我打算用springboot的集成方式,因为这样只需要改配置文件就可以添加主从信息,分库分表等等了
  • 然后就出问题了,报了上述的错误信息

1.3. 解答

  • 网上的解决方法都是配置没配对啊,名字没写对啊,namespace命名空间没写对啊这些答案,没一个是我想要的
  • 根据报错,我找到了我的maven库里有org.mybatis:mybatis:3.5.0org.mybatis:mybatis:3.4.5报错的信息在3.4.5中,但我mybatis-plus依赖的其实是3.5.0,错误原因找到了,所以去搜索有关mybatis的jar包,我找到了我的maven中有如下jar包
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>2.0.1</version>
</dependency>
  • 这个jar包其实是之前我为了解决某个报错而引入的,但实际上在我把mybatis替换成mybatis-plus过程中就已经没有那个bug了,这次直接去掉这个依赖,启动成功

1.4. 总结

  • 所以有时候找maven的依赖关系多了可能也会导致错误,需要多注意重复的版本不同的jar包

以上是关于mybatis中集成sharing-jdbc采坑的主要内容,如果未能解决你的问题,请参考以下文章

mybatis if test 采坑记

Mybatis 采坑记录--set标签的使用

在spring中集成EventBus

Eclipse中集成Tomcat

springboot2+JPA集成 sharing-jdbc实现单库分表

springboot2+JPA集成 sharing-jdbc实现单库分表