问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Mybatis分页插件PageHelper的使用-

发布网友 发布时间:2022-10-08 04:27

我来回答

1个回答

热心网友 时间:2023-11-25 14:41

mybatis分页插件的配置可以在myts的配置文件进行配置,也可以在spring的配置文件中进行配置,两者配置其一即可

上面是 PageHelper 官方给的配置和注释,虽然写的很多,不过确实描述的很明白。

dialect :标识是哪一种数据库,设计上必须。 offsetAsPageNum :将 RowBounds 第一个参数 offset 当成 pageNum 页码使用 rowBoundsWithCount :设置为 true 时,使用 RowBounds 分页会进行 count 查询 reasonable : value=true 时, pageNum 小于1会查询第一页,如果 pageNum 大于 pageSize 会查询最后一页

注:上面的配置只针对于pagehelper4.x版本的,如果你用的是pagehelper5.x版本就要这样配置,注意两个spring配置中的类名不同

1. 在 MyBatis 配置 xml 中配置*插件

2. 在 Spring 配置文件中配置*插件

如果4.x的版本用了5.x的版本报错信息如下 springboot 在启动项目的时候就会报错,报错信息有很多,主要是因为

总的来说就是缺少了 com.github.pagehelper.PageInterceptor ,这个是新版*,5.x版本才开始使用,所以在4.x版本这样配置是不行的

那么5.x版本的配置在pagehelper4.x上能生效吗?答案是不行 报错信息如下

新版的*PageInterceptor不能和旧版*相互转换,所以还是不行的。

总的来说,pagehelper4.x就该用4.x的配置,pagehelper5.x就用5.x的配置(官方推荐)

使用mybatis的分页插件时报错: net.sf.jsqlparser.statement.select.PlainSelect.getGroupBy()Lnet/sf/jsqlparse

原因:在使用mybatis分页插件时,需要依赖 jsqlparser

PageHelper的 不同版本依赖不同 的jsqlparser版本

pageHelper4.x依赖版本 jsqlparser-1.3.jar

在配置完mybatis后,pagehelper的业务用法,就以分页查询用户列表为例

添加查询所以用户的 mapper 接口

重点来了,然后在 service 中, 先开启分页 再进行查询 ,然后把查询结果集放入 PageInfo 中

PageHelper.startPage(pageNum, pageSize); 这句非常重要,这段代码表示分页的开始,意思是从第 pageNum 页开始,每页显示 pageSize 条记录。

PageInfo 这个类是插件里的类,这个类里面的属性会在输出结果中显示, 使用 PageInfo 这个类,你需要将查询出来的 list 放进去:

PageHelper输出的数据结构

然后在 controller 层调用该方法设置对应的 pageNum 和 pageSize 就可以了,我设置 pageNum 为1, pageSize 为5,看个输出结果吧

PageInfo这个类里面的属性:

pageNum 当前页

pageSize 每页的数量

size 当前页的数量

orderBy 排序

startRow 当前页面第一个元素在数据库中的行号

endRow 当前页面最后一个元素在数据库中的行号

total 总记录数(所有符合条件的数据总数)

pages 总页数 (这个页数也很好算,每页5条,总共有11条,需要3页才可以显示完)

list 结果集

prePage 前一页

nextPage 下一页

isFirstPage 是否为第一页

isLastPage 是否为最后一页

hasPreviousPage 是否有前一页

hasNextPage 是否有下一页

navigatePages 导航页码数

navigatepageNums 所有导航页号

navigateFirstPage 导航第一页

navigateLastPage 导航最后一页

firstPage 第一页

lastPage 最后一页

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
房产证是房管局具体哪个部门在办理 电脑绿灯闪烁无法开机电脑主机绿灯一直亮但是开不开机没有反应_百度... 联想19寸显示器出现绿色一闪一闪 显示器绿灯闪烁,没图像 为什么我的联想显示器的指示灯总是闪烁??? 梦见一个小乞丐撒尿到头来的预兆 国服3.22战斗贼如何打出《高》DPS 国服3.22盗贼天赋,武器选择 魔兽世界3.22版本,战斗贼输出循环,请详细一点儿,谢谢,还有,红色宝石全部... 当老板需要具备哪些品质和能力 请教带数据分页的Service接口应该怎样设计 形容花美丽的经典句子优美段落 关于百合花洁白的诗句 形容花朵洁白无瑕的诗句 为什么华为P9手机4G 怎样描写教学楼的诗句 形容教学楼的诗句 开车总是担心撞到东西怎么办? 生产副总经理岗位职责 生产副总经理的岗位职责 亲们有没有汽车不解体油路清洗设备操作规程 那里有不解体油路清洗设备买! 天才们,帮帮小妹吧 现在六月份我养的有一群蜜蜂没有封盖子脾,蜂王也停产了,是想逃跑吗?该怎么办好?桂平市的 中蜂停产了怎么办 关于空调的度数问题 什么是直接分配法其优点和不足是什么 什么是直接分配法 直接分配法介绍 斗破苍穹人物介绍 关于斗破苍穹人物介绍 斗破苍穹人物简介 斗破苍穹人物介绍 spring mvc里面,为什么要单独出来一个service层调用dao再传给controller啊? 这样设计有什么好处? 王宝强在《拿手好戏》中挑战京剧武生扮相,有哪些惊艳的场面? 谁知道京剧里的武生的功夫怎么练,那跟斗翻的好轻松,要详细的训练方法。 在哪里可以找到炒股的朋友 怎样才能找得到有炒股需求的人我是证券公司的,怎样才能找得到有炒股需求但还没有开户的人? 戏曲大舞台手抄报 wd西数 my passport pro 4tb 2.5寸雷电thunderbolt移动硬盘怎么样 华信控股被谁买去了 永不封号的 广东华信控股有限公司怎么样? 海南《华信控股》投资平台是诈骗平台吗? 有什么方法可以让一直不被封? 中安华信控股有限公司怎么样? 卫生间接线盒受潮所有开关都不亮了怎么解决 学隶书怎么写 隶书体的学以致用怎么写 学的隶书怎么写 美团外卖怎么联点单机 怎样可以永久不封? 怎样永远都不被封?