分页助手PageHelper学习

PageHelper是mybatis的通用分页插件,通过mybatis的拦截器实现分页功能,拦截sql查询请求,添加分页语句, 最终实现分页查询功能。
在 springboot上集成pagehelper,PageHelper的使用方法及原理如下: 在调用dao的service方法中设置分页参数:PageHelper.startPage(page, size),分页参数会设置在ThreadLocal中,PageHelper在mybatis执行sql前进行拦截,从ThreadLocal取出分页参数,修改当前执行的sql语句,添加分页 sql。 最后执行添加了分页sql的sql语句,实现分页查询。

1、 PageHelper配置

添加依赖

<dependency>
     <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper‐spring‐boot‐starter</artifactId>       <version>1.2.4</version>
</dependency>

2、配置pageHelper

在yml中写入配置

pagehelper:     helper‐dialect: mysql

3、测试

1)定义mapper接口

@Mapper
public interface CourseMapper {
     CourseBase findCourseBaseById(String id);     Page<CourseInfo> findCourseListPage(CourseListRequest courseListRequest);
}

2)定义mapper.xml映射文件

<select id="findCourseListPage" resultType="com.xuecheng.framework.domain.course.ext.CourseInfo"  parameterType="com.xuecheng.framework.domain.course.request.CourseListRequest">     SELECT      course_base.*,     (SELECT pic FROM course_pic WHERE courseid = course_base.id) pic     FROM     course_base</select>

3)测试dao

@Test
 public void testPageHelper(){
     PageHelper.startPage(1, 10);//查询第一页,每页显示10条记录     
     CourseListRequest courseListRequest = new CourseListRequest();    
     Page<CourseInfo> courseListPage = courseMapper.findCourseListPage(courseListRequest);
     List<CourseInfo> result = courseListPage.getResult();     System.out.println(courseListPage);
}

原文地址:https://www.cnblogs.com/yamiya/p/12369944.html

时间: 2024-07-31 15:31:42

分页助手PageHelper学习的相关文章

1.动态sql语句 2.逆向工程(generator) 3.分页助手(pagehelper)

2019-8-30 大纲 1.动态sql语句 2.逆向工程(generator) 3.分页助手(pagehelper) 1.动态sql语句(即sql语句的拼接) 1.1  if标签(属性:test(判断条件)) 缺点:如果仅仅是第二个条件满足导致sql语句出错(使用if+where) <select id="select1" resultType="com.zhiyou.clg.bean.User"> select *from user <if t

分页助手PageHelper

1.pageHelper环境搭建 <!--PageHelper依赖引入--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2</version> </dependency> 2.配置文件:配置的是mybatis的pageHelper插件,m

Mybatis分页助手PageHelper

注意:PageHelper.startPage(1, 3);这个方法是从1开始而非0 参考: http://blog.csdn.net/zbw18297786698/article/details/53945729

MyBatis-----7.pageHelper分页助手

pageHelper是一款免费的分页插件,可以适用于多种数据库. 使用分页插件可以大大减少代码量,这里将介绍分页插件的使用方法. 1.下载地址 https://github.com/pagehelper/Mybatis-PageHelper 这里我使用的是   jsqlparser-2.0.jar+pagehelper-5.1.10.jar 2.使用方法: 2.1配置分页助手: 在conf.xml中添加如下代码,注意添加在<properties resource="db.propertie

MyBatis学习总结_17_Mybatis分页插件PageHelper

如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊情况请看重要提示. 想要使用分页插件?请看如何使用分页插件. 物理分页 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005,2008) Informix H2 SqlServer2012 配置dialect属性时,可以使用小写形式: Oracle,MySQL

分页工具 Pagehelper的学习 (Spring+Mybatis)

使用pageHelper 非常简单,只需要: 1.在MyBatis中配置MyBatis的拦截器插件 2.配置数据库的方言,来确定数据库 3.设置分页也只需要调用类的静态方法:PageHelper.startPage(1, 30); /* MyBatis的配置文件 SqlMapConfig.xml */ <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC &quo

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

如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊情况请看重要提示. 想要使用分页插件?请看如何使用分页插件. 物理分页 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005,2008) Informix H2 SqlServer2012 配置dialect属性时,可以使用小写形式: oracle,mysql

SpringBoot集成MyBatis的分页插件PageHelper

俗话说:好??不吃回头草,但是在这里我建议不管你是好马还是不好马,都来吃吃,带你复习一下分页插件PageHelper. 昨天给各位总结了本人学习springboot整合mybatis第一阶段的一些学习心得和源码,主要就算是敲了一下SpringBoot的门儿,希望能给各位的入门带给一点儿捷径,今天给各位温习一下MyBatis的分页插件PageHelper和SpringBoot的集成,它的使用也非常简单,开发更为高效.因为PageHelper插件是属于MyBatis框架的,所以相信很多哥们儿都已经用

SpringBoot集成MyBatis的分页插件PageHelper(回头草)

俗话说:好??不吃回头草,但是在这里我建议不管你是好马还是不好马,都来吃吃,带你复习一下分页插件PageHelper. 昨天给各位总结了本人学习springboot整合mybatis第一阶段的一些学习心得和源码,主要就算是敲了一下SpringBoot的门儿,希望能给各位的入门带给一点儿捷径,今天给各位温习一下MyBatis的分页插件PageHelper和SpringBoot的集成,它的使用也非常简单,开发更为高效.因为PageHelper插件是属于MyBatis框架的,所以相信很多哥们儿都已经用