【SpringBoot】MyBatisPlus(MP | 分页查询操作

分页查询 分页展示

分页操作

MP| 使用 MyBatis Plus

分页操作是在MP常规操作的基础之上增强而得到的。
内部是动态SQL语句实现的,因此需要增强对应的功能,使用MP拦截器实现?????? 【why???】

  1. 创建springboot项目,引入MP依赖等
  2. 连接数据库
  3. 还需要MP配置类(MP拦截器 在该拦截其中添加分页拦截器)
  4. 使用测试类测试方法在控制台中打印输出查看效果
java 复制代码
@Test
    public void testPage() {
        // 测试分页查询
        // 1. 创建一个 Page 对象,传入当前页,每页记录数
        // 2. 调用 BookDao 中 selectPage
        IPage page = new Page(1, 1);
        bookDao.selectPage(page, null);
        // 3. 获取分页查询结果

        

// current 获取当前页数/当前页码
        System.out.println(page.getCurrent());
        // pages 获取总页数
        System.out.println(page.getPages());
        // size 获取每页大小/条数  获取每页显示条数
        System.out.println(page.getSize());
        // total 获取总记录数
        System.out.println(page.getTotal());
        // records 获取当前页数据 ? [Book{id=1, type='kao', name='kao', description='test'}]
        System.out.println(page.getRecords());
//        System.out.println(page.hasPrevious());
//        System.out.println(page.hasNext());
//

    }
  1. 使用MP中提供的方法
java 复制代码
 // 3. 获取分页查询结果

        // current 获取当前页数/当前页码
        System.out.println(page.getCurrent());
        // pages 获取总页数
        System.out.println(page.getPages());
        // size 获取每页大小/条数  获取每页显示条数
        System.out.println(page.getSize());
        // total 获取总记录数
        System.out.println(page.getTotal());
        // records 获取当前页数据 ? [Book{id=1, type='kao', name='kao', description='test'}]
        System.out.println(page.getRecords());
        

Attention

需要注意的是

  1. IPage封装分页数据
  2. 分页操作依赖于MP的拦截器实现该功能
  3. 我们还是需要借助MP的日志查询来执行语句 (配置MP的日志显示)才能看到操作的整个过程
相关推荐
秋水无痕几秒前
# 手把手教你从零搭建 AI 对话系统 - React + Spring Boot 实战(二)
前端·后端·面试
Master_Azur5 分钟前
java内部类与匿名内部类
后端
开心就好202511 分钟前
不依赖 Mac 也能做 iOS 开发?跨设备开发流程
后端·ios
一直都在57212 分钟前
线程间的通信
java·jvm
一只叫煤球的猫13 分钟前
RAG 如何落地?从原理解释到工程实现
人工智能·后端·ai编程
卷心菜投手ovo23 分钟前
一个页面支持自定义字段,后端该怎么设计数据库?
后端
隔壁家滴怪蜀黍28 分钟前
AgentScope MsgHub 多智能体通信机制详解
后端
孟陬28 分钟前
国外技术周刊 #3:“最差程序员”带动高效团队、不写代码的创业导师如何毁掉创新…
前端·后端·设计模式
GIOTTO情31 分钟前
Infoseek危机公关全链路技术解析:基于近期热点舆情的落地实践
java
Cosolar33 分钟前
Transformer训练与生成背后的数学基础
人工智能·后端·开源