1、引入依赖

我们在项目的pom.xml文件中引入以下代码

<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.3</version>
</dependency>

这是分页插件的启动代码,项目启动时自行启动,如果使用别的依赖还需要做一些配置。所以我们使用简便的方式,我想大家也希望操作不需要太复杂吧。哈哈哈哈。接下来在mapper接口书写以下代码

2、将实体类对应的数据表内容放入集合中

List<Type> findAllType();

当然名字可以结合你自己的项目,看看你的实体类有哪些。然后在对应的mapper.xml输入以下代码

<select id="findAllType" resultMap="TypeEntityMap">SELECT * FROM t_type
</select>

紧接着来到业务层接口,也就是service层,输入以下代码

3、在Service层使用PageInfo属性

PageInfo<Type> getAllType(Integer pageNum,Integer pageSize);

Type为你项目的实体类,pageNum表示当前页,pageSize表示每页的数量。接下来一步,来到业务层的实现类也就是ServiceImpl文件

 @Overridepublic PageInfo<Type> getAllType(Integer pageNum,Integer pageSize) {PageHelper.startPage(pageNum,pageSize,"id DESC");List<Type> types = typeMapper.findAllType();return new PageInfo<>(types);}

这个大家很熟悉了,不要漏掉PageHelper.startPage(pageNum,pageSize,"num DESC"); 这一行代码,要不然分页是不生效的。最后面引号里面的可填可不填,表示order by 也就是按什么排序,DESC表示倒叙排列。完成以上步骤就可以在Test类测试了

    @Testpublic void getAllTyPe(){PageInfo<Type> typePageInfo = typeService.getAllType(1,5);System.out.println(typePageInfo);
//        List<Type> list = yupePageInfo.getList();
//        System.out.println(list);
//        System.out.println(list.get(0).getTypeName());}

大家对于可以输出的内容,都测试一下,看看有什么区别。我们先来看看PageInfo类的属性里有什么内容,如果用idea的话,可以按住ctrl同时点击PageInfo就可以进入了

private static final long serialVersionUID = 1L;private int pageNum;//当前页private int pageSize;//每页的数量private int size;//当前页的数量private int startRow;// 当前页面第一个元素在数据库中的行号private int endRow;//当前页面最后一个元素在数据库中的行号private long total;//总条数private int pages;//总页数private List<T> list;//结果集合private int prePage;//上一页private int nextPage;//下一页private boolean isFirstPage;//是否为首页页private boolean isLastPage;//是否为尾页页private boolean hasPreviousPage;//是否有上一页private boolean hasNextPage;//是否有下一页private int navigatePages;//导航页码private int[] navigatepageNums;//导航页号private int navigateFirstPage;//导航条上的第一页private int navigateLastPage;//导航条上的最后一页

我这里截取了一部分,相信对于小伙伴们来说有所帮助。最后就可以来到控制层了

4、Controller层调用

 @RequestMapping("/")public String index(@RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum, Model model){// 首页右侧分类PageInfo<Type> typePageInfo = typeService.getAllType(pageNum,6);model.addAttribute("types",typePageInfo);return "index";}

这样我们就可以在前端页面使用了。对于前端如何使用,大家视具体情况而定。使用thymeleaf和freemarker模板引擎调用方法不一样。下期我将想大家介绍,freemarker模板引擎的使用。

本期内容就给大家介绍到这里啦。

原文来至:https://www.lovelin.space/blog/15/detail

关于mybatis分页插件PageHelper的使用方法相关推荐

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

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

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

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

  3. Mybatis分页插件PageHelper使用教程(图文详细版)

    Mybatis分页插件PageHelper使用教程(图文详细版) 1.配置 2.后台代码 controller类 html页面 html页面效果图 1.配置 小编的项目是springBoot项目,所以 ...

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

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

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

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

  6. 分页插件PageHelper的使用方法

    PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql. oracle.mariaDB.DB2.SQLite.Hsqldb等. PageHe ...

  7. MyBatis 分页插件 PageHelper:是如何拦截SQL进行分页

    目录 Springboot项目集成 分页插件参数介绍 如何选择配置这些参数 场景一 场景二 场景三 场景四 场景五 PageHelper的使用 PageHelper实现原理1: interceptor ...

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

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

  9. Mybatis分页插件PageHelper简单使用

    转载自:https://www.cnblogs.com/ljdblog/p/6725094.html 引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句, ...

最新文章

  1. Docker创建Nexus
  2. 记与公司内网微博的谈话
  3. react 判断图片是否加载完成_React中型项目的优化实践
  4. STM32 串口DMA接收 Openmv / K210 整数、小数字符串数据 (基于HAL库)
  5. 玩转oracle 11g(42):增加表空间
  6. Android中 requestCode与resultCode的区别与用法
  7. 程序员面试金典——番外篇之下一个较大元素I
  8. c++调用matlab
  9. mysql环境变量配置还是不行_mysql环境变量配置与Error 1045的解决方案
  10. 广联达提示盗版文件修复工具
  11. Win10设置不能保存,添加应用磁贴重启后恢复原状问题
  12. ActiveMQ 之安全认证
  13. laravel-excel 表格 文档翻译笔记
  14. 写作三件套(VScode Miktex Latex Workshop)入门三大坑
  15. python金融量化书籍_超强干货 | Python金融数据量化分析教程+机器学习电子书
  16. Python 全栈系列92 - memos的字段设计
  17. 使用Lambda(拉姆达)对集合进行排序,一行代码即可解决
  18. MATLAB 代数运算
  19. 做BI财务数据分析,国产BI软件经验更足
  20. C++学习(三十九)(C语言部分)之 游戏项目(2048游戏)

热门文章

  1. 新冠全球曼延风险等级攀升,阿里“生物特征识别多模态融合”价值凸显
  2. 从零开始搭建公司域环境(七):在文件服务器上为每位域用户创建个人文件夹homefolder
  3. 基于5G的仓储信息化解决方案2022
  4. 【Arduino】入门篇——SOS求救信号器
  5. c++ 沉思录笔记——句柄(第一部分)
  6. 自媒体平台账号注册和管理系统
  7. 2021年茶艺师(初级)证考试及茶艺师(初级)模拟考试题
  8. 如何破解aspose.words
  9. 安利集团被骚扰(2):动力100如何对抗商务领航?
  10. webpack——冒烟测试