mybatis使用pageHelper插件进行查询分页

在数据库服务器中,sql语句实现分页便要每个查询语句都要写上limit(开始,结束),并且不能灵活的随前端变化,为此使用拦截器的方法,过程:拦截器拦截请求的sql语句(根据需要拦截的ID(正则匹配),进行拦截),并对根据前端传过来的页数,和每页的条数,计算出limit(开始,结束),总条数,然后,拼接到sql语句后边。其中这个处理过程,已经封装到了,分页插件中,可以不用理解,直接使用。

mybatis查询分页---使用pageHelper插件

之前在spring+springmvc由于整个大多都是xml的配置,在使用spring-boot后,需要进行分页,

也希望能够减少xml的配置以及新建很多分页的相关类,找到了pageHelper这个插件,

分页起来非常方便

page类

新建一个page< T > 用来接收分页信息

/**
 * @Author xuelongjiang
 */
public class Page<T> {

  private Integer pageNo = 0;

  private Integer pageSize = 10;

  private T t;

  public Integer getPageNo() {
    return pageNo;
  }

  public void setPageNo(Integer pageNo) {
    this.pageNo = pageNo;
  }

  public Integer getPageSize() {
    return pageSize;
  }

  public void setPageSize(Integer pageSize) {
    this.pageSize = pageSize;
  }

  public T getT() {
    return t;
  }

  public void setT(T t) {
    this.t = t;
  }
}

引入依赖

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

springboot属性文件增加pageHelper配置

这里使用的是yml(可读性很强,也能少敲些键盘,爱护一下我们可爱的键盘^-^)的方式,

  pagehelper:
    helperDialect: mysql
     reasonable: true

使用pageHelper 进行分页

public PageInfo<AnswerQuestionDTO>  answerAndQuestionDetailByPage(Page<AnswerQuestionDTO> page){//使用page保包装我们的类

    PageHelper.startPage(page.getPageNo(),page.getPageSize());//设置分页相关值
    List<AnswerQuestionDTO> answerQuestionDTOList = answerAndQuestionDao.answerAndQuestionDetailList(page.getT());//查询
    PageInfo<AnswerQuestionDTO> pageInfo = new PageInfo<>(answerQuestionDTOList);//包装为分页结果
    return pageInfo;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 使用mybatis插件PageHelper实现分页效果

    最近都在忙着写一个网站项目,今天做一个分页功能的时候,遇到了分页效果实现不了的问题,查了好久的资料,后来终于是成功解决啦,记录一下~ 1.在pom.xml中添加分页插件依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.5</version> </depend

  • SpringMvc+Mybatis+Pagehelper分页详解

    最近公司需要做一个告警页面的功能,需要分页,查了很多资料发现PageHelper比较合适 故写一篇从零开始的PageHelper使用的教程,也记录下忙活一天的东西 1.首先需要在项目中添加PageHelper的依赖,这里我用的Maven添加 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>

  • Spring Boot+Mybatis+Druid+PageHelper实现多数据源并分页的方法

    前言 本篇文章主要讲述的是SpringBoot整合Mybatis.Druid和PageHelper 并实现多数据源和分页.其中SpringBoot整合Mybatis这块,在之前的的一篇文章中已经讲述了,这里就不过多说明了.重点是讲述在多数据源下的如何配置使用Druid和PageHelper . Druid介绍和使用 在使用Druid之前,先来简单的了解下Druid. Druid是一个数据库连接池.Druid可以说是目前最好的数据库连接池!因其优秀的功能.性能和扩展性方面,深受开发人员的青睐. D

  • mybatis分页插件pageHelper详解及简单实例

    mybatis分页插件pageHelper详解及简单实例 工作的框架spring springmvc mybatis3 首先使用分页插件必须先引入maven依赖,在pom.xml中添加如下 <!-- 分页助手 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>3.7.5

  • mybatis插件pageHelper实现分页效果

    最近做的一个项目在持久层我们采用的是Mybatis今天完成了商品列表的分页查询的功能,这篇博客我分享一下如何采用pageHelper的插件实现分页.mybatis的应用,最大的好处就在于我们可以更加方便灵活的编写我们的sql语句,实现对单表或者多表的增删改查,在这基础上我们使用pageHelper插件实现分页更加方便了我们对项目的开发,提高了开发效率,我们以实现商品列表的查询为背景,详细介绍一下如何应用这个插件简单的实现分页功能. 1.jar包引入 我们项目中在依赖管理方面采用的是Maven,所

  • SpringBoot集成MyBatis的分页插件PageHelper实例代码

    昨天给各位总结了本人学习springboot整合mybatis第一阶段的一些学习心得和源码,主要就算是敲了一下SpringBoot的门儿,希望能给各位的入门带给一点儿捷径,今天给各位温习一下MyBatis的分页插件PageHelper和SpringBoot的集成,它的使用也非常简单,开发更为高效.因为PageHelper插件是属于MyBatis框架的,所以相信很多哥们儿都已经用烂了,下面带着各位吃一下回头草. 首先说说MyBatis框架的PageHelper插件吧,它是一个非常好用的分页插件,通

  • Mybatis分页插件PageHelper的使用详解

    1.说明 如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件. 该插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页. 2.使用方法 第一步:在Mybatis配置xml中配置拦截器插件: <plugins> <!-- com.github.pagehelper为PageHelper类所在包名 --> <plugin interceptor="com.github.pageh

  • Mybatis分页插件PageHelper的配置和简单使用方法(推荐)

    前言 在web开发过程中涉及到表格时,例如dataTable,就会产生分页的需求,通常我们将分页方式分为两种:前端分页和后端分页. 前端分页 一次性请求数据表格中的所有记录(ajax),然后在前端缓存并且计算count和分页逻辑,一般前端组件(例如dataTable)会提供分页动作. 特点是:简单,很适合小规模的web平台:当数据量大的时候会产生性能问题,在查询和网络传输的时间会很长. 后端分页 在ajax请求中指定页码(pageNum)和每页的大小(pageSize),后端查询出当页的数据返回

  • mybatis使用pageHelper插件进行查询分页

    在数据库服务器中,sql语句实现分页便要每个查询语句都要写上limit(开始,结束),并且不能灵活的随前端变化,为此使用拦截器的方法,过程:拦截器拦截请求的sql语句(根据需要拦截的ID(正则匹配),进行拦截),并对根据前端传过来的页数,和每页的条数,计算出limit(开始,结束),总条数,然后,拼接到sql语句后边.其中这个处理过程,已经封装到了,分页插件中,可以不用理解,直接使用. mybatis查询分页---使用pageHelper插件 之前在spring+springmvc由于整个大多都

  • SpringBoot整合mybatis结合pageHelper插件实现分页

    SpringBoot整合mybatis分页操作 SpringBoot整合Mybatis进行分页操作,这里需要使用Mybatis的分页插件:pageHelper, 关于pageHelper的介绍,请查看官方文档: https://pagehelper.github.io/ 1.使用前配置 关于pageHelper的使用配置,主要有以下2个步骤: 1.1.在pom文件中导入pageHelper依赖 <dependency> <groupId>com.github.pagehelper&

  • mybatis使用pagehelper插件过程详解

    这篇文章主要介绍了mybatis使用pagehelper插件过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.添加插件的依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.4</version> <

  • PageHelper插件实现服务器端分页功能

    本文实例为大家分享了PageHelper插件实现服务器端分页功能,供大家参考,具体内容如下 一.添加依赖 在.pom文件中添加 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>3.5.1</version> </dependency> 二.添加配置/strong&

  • Vue2.0+ElementUI+PageHelper实现的表格分页功能

    前言 最近做了一些前端的项目,要对表格进行一些分页显示.表格分页的方法有很多,从宏观上来说分为物理分页和逻辑分页,由于逻辑分页(即前端分页)的做法是将数据全部缓存,然后分页显示,这样在数据量较大的时候会对浏览器的速度产生影响,所以考虑之后我使用了后端分页,后端分页的特点是对当前页的数据进行请求,每次当页码变化或者每页数据量变化的时候,就重新发一次请求.这里所用到的技术主要有以下几种: Spring SpringMVC Mybatis VueJS 2.0 ElementUI 后端数据库用的是Mys

  • ssm框架+PageHelper插件实现分页查询功能

    通过搭建ssm框架,然后通过mybatis的分页插件pagehelp进行分页查询. 源码:https://gitee.com/smfx1314/pagehelper 看一下项目结构: 首先创建一个maven工程,pom中引入相关jar包 <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId&

  • Mybatis第三方PageHelper分页插件的使用与原理

    目录 ​用法 ​原理 PageHelper.startPage做了什么 Page分页信息在哪使用 拦截器 插件 拦截器链 加载&调用拦截器 @Intercepts注解 通过PageHelper创建代理对象 拦截器的调用源头-动态代理 分页逻辑 ​总结 ​用法 ​ 此时commentAnalyses为Page对象(PageHelper插件包内定义的) ​ 而Page对象继承自JDK中的ArrayList,扩展并封装了一些page相关的字段,如页码,每页大小,总记录数,总页数等. ​原理 我们就加了

  • springboot +mybatis 使用PageHelper实现分页并带条件模糊查询功能

    完整案例: SpringBoot + laypage分页 + 模糊查询 完整案例 下面在通过实例代码介绍下springboot +mybatis 使用PageHelper实现分页并带条件模糊查询功能,内容如下所示: 调用接口Controller类 @ApiOperation("查询列表") @PostMapping("/selectList") public Result selectList(@RequestBody User_InfoListRequest us

  • Mybatis常用分页插件实现快速分页处理技巧

    在未分享整个查询分页的执行代码之前,先了解一下执行流程. 1.总体上是利用mybatis的插件拦截器,在sql执行之前拦截,为查询语句加上limit X X 2.用一个Page对象,贯穿整个执行流程,这个Page对象需要用Java编写前端分页组件 3.用一套比较完整的三层entity,dao,service支持这个分页架构 4.这个分页用到的一些辅助类 注:分享的内容较多,这边的话我就不把需要的jar一一列举,大家使用这个分页功能的时候缺少什么就去晚上找什么jar包即可,尽可能用maven包导入

  • 使用Mybatis的PageHelper分页工具的教程详解

    1.导入相关的jar包 在pom.xm中加入 <!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.10</ver

随机推荐