浅谈Mybatis分页插件,自定义分页的坑
场景:PageHelper 的默认分页方案是 select count(0) from (你的sql) table_count
由于查询数据比较大时,导致分页查询效率低下。
优化:使用自定义的count查询。、
废话不多说,对应代码如下:
这个时候会使用自定义的 count sql进行统计查询。
然后一般分页默认使用 PageHelper.startPage();
作者优化:如果获取的数量大于实际数量,则进行pageNum优化。
所以 最好建议重载 startPage。 不进行优化!!! 要不然莫名其妙的分页失效。每次都能查出数据。
补充知识:在mybatis-plus中使用分页插件做分页出现的问题
在使用mybatis-plus中使用分页插件做自定义XML分页查询的时候,自己定义的XML中的SQL后面多了一个分号,各种查不到,也没有报错。最后定位到是一个分号的问题!
理论上使用mybatis里面写sql最后是不能带分号的。
但是mybatis-plus中其他的查询带分号都没有事,只有这个分页查询,分页的page对象一传进去之后就查不到结果,这个坑找了好长时间
以上这篇浅谈Mybatis分页插件,自定义分页的坑就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
使用shardingsphere对SQLServer坑的解决
本文主要介绍了使用shardingsphere对SQLServer坑的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-03-03String类下compareTo()与compare()方法比较
这篇文章主要介绍了String类下compareTo()与compare()方法比较的相关资料,需要的朋友可以参考下2017-05-05Java中的synchronized有几种加锁方式(实例详解)
在Java中,synchronized关键字提供了内置的支持来实现同步访问共享资源,以避免并发问题,这篇文章主要介绍了java的synchronized有几种加锁方式,需要的朋友可以参考下2024-05-05
最新评论