当前位置: 首页 > news >正文

Java课题笔记~ MyBatis分页查询插件

1.添加依赖

<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper -->
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.2.0</version>
</dependency>

 2.在MyBatis的主配置文件中,配置分页插件

<!--以下是简洁配置,一般只需要按这个方式进行设置即可-->
<plugins><!--设置分页插件--><plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>

3.分页插件的简单应用

在查询功能之前使用PageHelper.startPage(int pageNum,int pageSize)开启分页功能

@Test
public void pageSearch(){SqlSession sqlSession = MyBatisUtil.getSqlSession();UserMapper userMapper = sqlSession.getMapper(UserMapper.class);System.out.println(userMapper);//简单使用Page<User> page = PageHelper.startPage(5,5);List<User> list = userMapper.selectUser();System.out.println(page);for (User user : list) {System.out.println(user);}
}

4.分页查询详细信息获取

在查询获取list集合之后,使用

PageInfo<T> pageInfo = new PageInfo<>(list<T> list,int navigatePages)获取分页相关数据

  • list:分页之后的数据
  • navigatePages:导航分页的页码数
@Test
public void pageSearch(){SqlSession sqlSession = MyBatisUtil.getSqlSession();UserMapper userMapper = sqlSession.getMapper(UserMapper.class);System.out.println(userMapper);Page<User> page = PageHelper.startPage(8,3);List<User> list = userMapper.selectUser();//详细的分页信息PageInfo<User> pageInfo = new PageInfo<>(list,7);System.out.println(pageInfo);for (User user : list) {System.out.println(user);}
}

 

分页相关数据/常用数据:

pageNum:当前页的页码

pageSize:每页显示的条数

size:当前页显示的真实条数

total:总记录数

pages:总页数

prePage:上一页的页码

nextPage:下一页的页码

isFirstPage/isLastPage:是否为第一页/最后一页

hasPreviousPage/hasNextPage:是否存在上一页/下一页

navigatePages:导航分页的页码数

navigatepageNums:导航分页的页码,[1,2,3,4,5]

http://www.lryc.cn/news/134851.html

相关文章:

  • (嵌入式c语言)类型修饰符
  • 1、Spring底层核心原理解析
  • 迷路的机器人(递归回溯+动态规划两个方法实现)
  • Nacos
  • 【Linux】网络层协议:IP
  • 神经网络为什么可以学习
  • Docker基础入门:镜像、容器导入导出与私有仓库搭建
  • Go语言入门指南:基础语法和常用特性解析(上)
  • 排序算法合集
  • Vue2-全局事件总线、消息的订阅与发布、TodoList的编辑功能、$nextTick、动画与过渡
  • DP读书:鲲鹏处理器 架构与编程(八)3.1鲲鹏处理器片上系统与Taishan处理器内核架构
  • 如何使用 HOOPS Exchange SDK 和 Polygonica Bridge
  • spring异步框架使用教程
  • 【数学建模】清风数模正课3 插值算法
  • 什么是eval()?eval是用来干什么的?
  • JavaScript-console:JavaScript控制台(Console)常用方法
  • Nginx配置前后端分离
  • rabbitmq的发布确认
  • RISC-V公测平台发布· CoreMark测试报告
  • 模型微调(fine-tune)
  • 云农场种植:互联网+智慧牧场,为农业注入新的活力和创新
  • Hadoop学习一(初识大数据)
  • linux定时备份MySQL数据库循环删除前30天的备份文件
  • 不加电透明屏:在场景化应用中,有哪些特点和优点?
  • 全球公链进展| Shibarium已上线;opBNB测试网PreContract硬分叉;Sui 主网 V1.7.1 版本
  • CSS中的display属性有哪些值?它们的作用?
  • ELKstack-日志收集案例
  • 基于GPT-4和LangChain构建云端定制化PDF知识库AI聊天机器人
  • Python可视化工具分享
  • ethers.js:构建ERC-20代币交易的不同方法