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.0
和org.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包