mybatis的分页查询可以通过PageHelper插件实现

在数据库中我们使用分页查询的sql语句为:
select * from 表名 [where 条件] limit (page-1)*pageSize, pageSize;
page: 当前页码
pageSize: 每页显示的条数。

但是当我们使用PageHelper插件后页码什么的都不用我们计算 我们可以通过直接使用它里面的函数得到我们想要的。如:总条数 总页数 当前页面呈现的数据

使用步骤:
第一步:在pom.xml中引入依赖

<dependency><groupId>repMaven.com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.3.0</version>
</dependency>

第二步:在conf.xml中设置PageHelper拦截器

<plugins><plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>

注意:

第三步:在测试类(单元测试)中测试:

    @Testpublic void testFindAll() throws Exception{Reader rd = Resources.getResourceAsReader("conf.xml");SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(rd);SqlSession session = factory.openSession();UserDao userDao = session.getMapper(UserDao.class);//pageNum:当前页 pageSize:每页显示几条数据PageHelper.startPage(1,2);List<User> user = userDao.findAll();PageInfo<User> pageInfo = new PageInfo<User>(user);System.out.println("总条数:"+pageInfo.getTotal());System.out.println("总页数:"+pageInfo.getPages());System.out.println("当前页码对应的数据:"+pageInfo.getList());session.close();}


数据库为:

/*Navicat Premium Data TransferSource Server         : MichinaishSource Server Type    : MySQLSource Server Version : 80011Source Host           : localhost:3306Source Schema         : mybatisTarget Server Type    : MySQLTarget Server Version : 80011File Encoding         : 65001Date: 06/06/2022 19:16:07
*/SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;-- ----------------------------
-- Table structure for tbl_user02
-- ----------------------------
DROP TABLE IF EXISTS `tbl_user02`;
CREATE TABLE `tbl_user02`  (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',`name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '姓名',`pwd` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '密码',`email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of tbl_user02
-- ----------------------------
INSERT INTO `tbl_user02` VALUES (6, '张三', '123', 'zs@qq.com');
INSERT INTO `tbl_user02` VALUES (7, '李四', '123', 'ls@qq.com');
INSERT INTO `tbl_user02` VALUES (9, 'ac', '123', 'ac@qq.com');
INSERT INTO `tbl_user02` VALUES (10, 'bc', '123', 'bc@qq.com');
INSERT INTO `tbl_user02` VALUES (11, 'cc', '123', 'cc@qq.com');
INSERT INTO `tbl_user02` VALUES (12, 'dc', '123', 'dc@qq.com');SET FOREIGN_KEY_CHECKS = 1;

分页插件--PageHelper相关推荐

  1. 解决使用mybatis分页插件PageHelper的一个报错问题

    解决使用mybatis分页插件PageHelper的一个报错问题 参考文章: (1)解决使用mybatis分页插件PageHelper的一个报错问题 (2)https://www.cnblogs.co ...

  2. MyBatis分页插件PageHelper使用练习

    转载自:http://git.oschina.net/free/Mybatis_PageHelper/blob/master/wikis/HowToUse.markdown 1.环境准备: 分页插件p ...

  3. vue分页+spring boot +分页插件pagehelper

    vue分页+spring boot +分页插件pagehelper https://blog.csdn.net/baidu_38603246/article/details/98854013

  4. 【MyBatis】MyBatis分页插件PageHelper的使用

    转载自 https://www.cnblogs.com/shanheyongmu/p/5864047.html 好多天没写博客了,因为最近在实习,大部分时间在熟悉实习相关的东西,也没有怎么学习新的东西 ...

  5. MyBatis学习总结(17)——Mybatis分页插件PageHelper

    2019独角兽企业重金招聘Python工程师标准>>> 如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊 ...

  6. SpringBoot集成MyBatis的分页插件PageHelper

    [写在前面] 项目的后台管理系统需要展示所有资源信息,select * 虽然方便但数据量过于庞大会严重降低查找效率,页面加载慢,用户体验差.分页自然是必要选择,但原生的方法过于繁杂.MyBatis的分 ...

  7. hql分页获取数据总数_最简洁的分页插件PageHelper

    最简洁的分页插件PageHelper 简介 大部分后台管理项目,用的最多的展现方式是列表显示,所以我把列表查询中的分页插件拿出来写一下,方便以后写代码的时候直接复制粘贴.在我们最熟悉的springbo ...

  8. java分页插件PageHelper的内置list数据操作失败

    问题描述: java分页插件PageHelper的内置list数据在hanlder处理器中获取失败,但是测试确通过了,如下图 但是测试代码成功 @ContextConfiguration(locati ...

  9. Spring Boot系列教程八: Mybatis使用分页插件PageHelper

    一.前言 上篇博客中介绍了spring boot集成mybatis的方法,基于上篇文章这里主要介绍如何使用分页插件PageHelper.在MyBatis中提供了拦截器接口,我们可以使用PageHelp ...

  10. (转)淘淘商城系列——MyBatis分页插件(PageHelper)的使用以及商品列表展示

    http://blog.csdn.net/yerenyuan_pku/article/details/72774381 上文我们实现了展示后台页面的功能,而本文我们实现的主要功能是展示商品列表,大家要 ...

最新文章

  1. model存数据_Jepsen 测试框架在图数据库 Nebula Graph 中的实践
  2. 基于android的记账本论文,(毕业论文)基于安卓的记账本.doc
  3. CSharpGL(42)借助帧缓存实现渲染到纹理(RenderToTexture)
  4. Android Memory Management
  5. 服务部署如何做到高可用?这份“三级跳”秘籍送给你
  6. 时间序列分析之:函数分解decompose
  7. shell之计算文本中单词出现频率
  8. js获取html样式属性,js怎么获取指定css属性的值?
  9. ListT清除重复某一项
  10. 聪明女人的七个致富之道,学会它你也能成为人人羡慕的小富婆
  11. 【Hive】hive表的文件存储格式
  12. PHP $_SERVER详解
  13. 如何学习Vim(转)
  14. 为什么有的计算机没有ppt,电脑上没有ppt怎么办
  15. android三星打印插件,三星打印服务插件 Samsung Print Service for Android
  16. 微信小程序优选驾考驾照考试预约+后台管理系统SSM-JAVA【数据库设计、论文、源码、开题报告】
  17. centos7 安装docker-ce社区版 ,最新版本docker,docker阿里云加速
  18. 硬盘分区不够,怎么合并分区?
  19. SEED-XDS560v2 EMU1-3 led闪烁
  20. python绘制七巧板_CSS3制作七巧板动画

热门文章

  1. 作业7--南通大学教务系统体验分析
  2. 记一次ubuntu系统崩溃的修复
  3. ENVI对LandSat8 (OLI)图像 FLAASH大气校正 input radiance image data 报错 no valid data encountered in this file
  4. 用Python解方程
  5. 关于ASP.NET编程中,GridView表格无法执行RenderControl()方法的问题
  6. BLAS CBLAS 安装技巧
  7. 因为被骗8000块,他愤而“自学”电信诈骗搞到115万,如今他这样
  8. win10重启网卡,解决掉线等问题
  9. 如何快速查看每个德邦快递单号物流详情的两种方法
  10. 一次接线图的图符设计