Mybatis-Puls & pagehelper分页问题
Posted 沛沛老爹
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis-Puls & pagehelper分页问题相关的知识,希望对你有一定的参考价值。
前尘往事
Mybatis-Puls & pagehelper,mybatis领域的两个大块头来的。
用过mybatis的基本上都有用过他们。
mybatis-plus大本营:https://mp.baomidou.com/
pagehelper大本营:https://pagehelper.github.io/
双方团队的粉丝都很多,大部分都属于两面派的那种。
平时没事,大家都嘻嘻哈哈,和稀泥,打太极。
但是用的不好,双方就会直接干起来。
分页罢工的事情,很多人都踩过。
细究原因....
前因后果
Mybatis-Plus和pagehelper都是基于Mybatis的基础上进行二开的。
所以,他们的问题基本上就比较明显。
每个的对应的Mybatis的版本都是不一样的。
在实际代码的引入包中,会发生版本的冲突问题。
一般分页出问题的,大多数都是因为版本不兼容的问题导致的。
对应的版本不一致,用时一时爽,调试火葬场。
有兴趣的可以看下pagehelper和mybatis-plus的版本中包含的mybatis的包的版本。
您会发现两位猪哥的版本都是按照自己的喜好来的。
pagehelper更新的版本(传送门):
https://github.com/pagehelper/pagehelper-spring-boot
前思后想
分页问题要解决的话,江湖上一般就两种方案:
1、两者共存。
让Mybatis版本统一,干掉其中的一个mybatis的版本。
maven中一般使用exclusion,将其中一个忽略掉。
如下所示:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.13</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
<exclusion>
<artifactId>mybatis-spring</artifactId>
<groupId>org.mybatis</groupId>
</exclusion>
</exclusions>
</dependency>
2、干掉其中一个。
2.1、干掉pagehelper,分页直接用mybatis-plus的IPage来实现。
2.2、干掉mybatis-plus,苦哈哈去刷xml文档。
总结
推荐使用方法一,毕竟两者都有各自的优势来的。
以上是关于Mybatis-Puls & pagehelper分页问题的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot + Mybatis-puls + ClickHouse (分页查询添加修改删除)
SpringBoot + Mybatis-puls + ClickHouse (分页查询添加修改删除)