MyBatis-Plus 分页插件实现分页查询

chatgpt/2023/9/27 7:20:32

目录

1. 配置分页查询的拦截器

2. 使用 Page 对象实现分页功能


1. 配置分页查询的拦截器

因为 MyBatis-Plus 里面使用了分页插件来实现分页查询, 所以我们需要将 MyBatis-Plus 的插件添加到当前的项目里, 这样我们执行的查询操作才会生效.

创建 PageConfig 类:

@Configuration
public class PageConfig {// 配置分页查询的拦截器@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();// 将 MP 里面的分页插件设置给 MPinterceptor.addInnerInterceptor(new PaginationInnerInterceptor());return interceptor;}
}

当我们将 MP 里面的分页插件设置给 MP 之后, 它就会将 MaBatisPlusInterceptor 对象返回给框架, 于是框架就会执行 MyBatis-Plus 的一个拦截, 进而走 Mybatis-Plus 的分页插件, 从而实现分页查询功能.

2. 使用 Page 对象实现分页功能

待分页的数据如下 : 

【代码实现】

@RequestMapping("/getpage")
public Object getPage(Integer pindex, Integer psize) {// 非空效验 ...// 查询数据库得到分页数据Page page = new Page(pindex, psize);Page<User> result = userService.page(page);return result;
}

验证分页效果, 浏览器输入 http://127.0.0.1:8080/user/getpage?pindex=2&psize=2

查询第二页的数据,每页显示两条数据 : 

 结果正确!! 并且里面还提供了总共多少页数据, 非常方便~

【注意事项】

1. 项目中如果配置了拦截器, 拦截器中需要给分页接口放行.

2. 后端将数据返回给前端时, 想要拿到具体的分页数据, 不再是拿到 success 回调函数中 body 参数里封装好的 data 了, 而是 data 里面的 records 对象.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-5313571.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

【Ansible】自动化部署工具-----Ansible

自动化部署工具-Ansible 1.Ansible概述2.ansible环境安装部署2.1 command模块2.2 shell模块2.3 cron模块2.4 user模块2.5 group模块2.6 copy模块2.7 file模块2.8 hostname模块2.9 ping模块2.10 yum模块2.11 service/systemd模块2.12 script模块2.13 mount模块2.14 archive模块2…

每个团队都应该跟踪的 5 个销售指标

销售是一项极具挑战性的任务&#xff0c;需要综合运用各种技能&#xff0c;包括沟通、说服和谈判。销售人员不仅要对自己的产品了如指掌&#xff0c;还要深入了解他们的潜在客户。 因此&#xff0c;如果你的企业有销售部门&#xff0c;并且正在积极寻求、开启和完成销售&#…

ZZULIOJ 1187: 棒棒糖(结构体专题),Java

ZZULIOJ 1187: 棒棒糖&#xff08;结构体专题&#xff09;&#xff0c;Java 题目描述 新年快到了&#xff0c;计算机学院新年晚会正在筹备中&#xff0c;今年有一个新创意&#xff1a;来参加晚会的所有学生都有礼物&#xff08;一根棒棒糖&#xff09;。老师把买棒棒糖的任务…

Unity中常用方法

1.基础 //初始化引入 [RequireComponent(typeof(BoxCollider2D))] [RequireComponent(typeof(Rigidbody2D))]//游戏帧率设置 60帧Application.targetFrameRate 60;//获取物体对象 //获取到当前物体(根据名称&#xff0c;也可以根据路径)GameObject go GameObject.Find("…

SQL Server通过指令备份数据库和恢复数据库

数据库备份&#xff1a; backup database [MyTestDB]to diskD:\MyTestDB_20200101.bakwith format,init,stats1,compression 数据库恢复&#xff1a; restore database MyTestDB_newfrom diskD:\MyTestDB_20200101.bakwith move MyTestDB to D:\MyTestDB_new.mdf,move MyTest…

使用ansible playbook编写lnmp架构

使用ansible playbook编写lnmp架构 - name: nginx playgather_facts: falsehosts: lnmpremote_user: roottasks: - name: stop firewalldservice: namefirewalld statestopped- name: syslinuxcommand: /usr/sbin/setenforce 0ignore_errors: true- name: nginx.repocopy: src/…

hadoop部署配置

端口名称 Hadoop2.x Hadoop3.x NameNode内部通信端口 8020 / 9000 8020 / 9000/9820 NameNode HTTP UI 50070 9870 MapReduce查看执行任务端口 8088 8088 历史服务器通信端口 19888 19888 端口名称Hadoop2.xHadoop3.xNameNode内部通信端口8020 / 90008020 / 9000/9820NameNode…

2022年全国职业院校技能大赛(高职组)“软件测试”赛项单元测试参考答案

题目2&#xff1a;根据输入的年份和月份判断月份的天数。若月份不在有效范围之内&#xff0c;应提示&#xff1a;“月份输入不正确。”。月份不为2月&#xff0c;根据输入月份输出对应的月份天数。月份为2月&#xff0c;根据年份判断如为普通闰年&#xff0c;输出2月份正确天数…
推荐文章