PageHelper的简单使用

先引入对应的依赖

<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>

接下来就添加上对应的拦截器插件

  • 添加到mybatis的主配置文件上

    <!--注意拦截器的位置是有讲究的 -->
    <plugins>
    <plugin interceptor="com.github.pagehelper.PageInterceptor">
    </plugin>
    </plugins>

    那么位置到底有什么讲究呢?

    就目前而言,它是需要放到<configuration></>标签之内,在<typeAliases></>之后,在<mapper></>之前的。总之,一个个试,直到不报错就行了。

  • 其实也可以在spring主配置文件上添加插件

    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 注意其他配置 -->
    <property name="plugins">
    <array>
    <bean class="com.github.pagehelper.PageInterceptor">
    <property name="properties">
    <!--使用下面的方式配置参数,一行配置一个 -->
    <value>
    params=value1
    </value>
    </property>
    </bean>
    </array>
    </property>
    </bean>

不过我个人更喜欢添加到mybatis配置文件上,感觉更直观点。

简单使用分页功能

在你需要进行分页的 MyBatis 查询方法前调用PageHelper.startPage 静态方法即可,紧

跟在这个方法后的第一个MyBatis 查询方法会被进行分页。

即在service中,调用dao中的方法之前,添加上这个方法就可以了。

//使用pageHelper进行分页查询
//此处为静态查询,在查询语句之前使用PageHelper.startPage()方法
PageHelper.startPage(page,count);
return iProductDao.selectAllProduct();

代入的两个参数就是查询第几页、每一页的数据数量。

即根据每一页的数据数量,插件就可以算出所有页数了,然后你查询第几页就一目了然。

注意返回值并不是简单的只返回查询出来的数据

可以使用PageInfo格式来接收

List<Product> productList = productService.findByPage(1,2);
PageInfo pageInfo = new PageInfo(productList);

该格式不仅包含了查询的数据,还有当前页码、总页码等一系列信息。

mybatissql语句不要写分号

sql语句的映射文件不要在结尾加上分号,不然容易出错,比如我用PageHelper的时候就给我再分号后面拼接上了limit语句,然后就报错。单独使用的时候是不会报错的。因为我再sqlyog上使用的时候就算结尾使用两个分号也没问题,因此证明mybatis会自动给我们加上分号。

PageHelper简单使用的更多相关文章

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

    一个好的讲解mybatis的博客地址http://www.jianshu.com/nb/5226994 引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句 ...

  2. 7、SpringBoot+Mybatis整合------PageHelper简单分页

    开发工具:STS 代码下载链接:https://github.com/theIndoorTrain/SpringBoot_Mybatis/tree/1d30d2a573ce6784149a28af9b ...

  3. mybatis分页插件pageHelper简单实用

    工作的框架spring springmvc mybatis3 首先使用分页插件必须先引入maven依赖,在pom.xml中添加如下 <!-- 分页助手 --> <dependency ...

  4. mybatis分页插件PageHelper简单应用

    --添加依赖 <!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --><depende ...

  5. PageHelper简单实用

    mybatis-config.xml配置如下: <!-- 分页插件 --> <plugins> <plugin interceptor="com.github. ...

  6. Mybatis PageHelper 简单使用

    流程 1,maven 依赖 2,在 mybatis 配置文件启用插件 3,修改 service 层 依赖 <!-- https://mvnrepository.com/artifact/com. ...

  7. Java SSM框架之MyBatis3(三)Mybatis分页插件PageHelper

    引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写count和select ...

  8. PageHelper

    https://pagehelper.github.io/ Mybatis分页插件PageHelper简单使用 SpringBoot之分页PageHelper

  9. 2、尚硅谷_SSM高级整合_创建Maven项目.avi

    第一步我们新建立一个web工程 这里首先要勾选上enable的第一个复选框 这里要勾选上add maven support 我们在pom.xml中添加sevlet的依赖 创建java web项目之后, ...

随机推荐

  1. CSS网页的布局

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...

  2. 050_Servlet详解

    目录 Servlet Servlet简介 HelloServlet Servlet原理 servlet-mapping Servlet请求路径 ServletContext Servlet上下文 Se ...

  3. 竖式问题(JAVA语言)

    package 第三章; import java.util.Scanner; public class 竖式问题 { public static void main(String[] args) { ...

  4. Windows下C++/Fortran调用.exe可执行文件

    目录 软件环境 Windows下CMake编译配置 设置项目的generator Command Line CMake GUI PreLoad.cmake 设置make 示例程序 CMake 设置Fo ...

  5. Leedcode算法专题训练(排序)

    排序 快速排序 用于求解 Kth Element 问题,也就是第 K 个元素的问题. 可以使用快速排序的 partition() 进行实现.需要先打乱数组,否则最坏情况下时间复杂度为 O(N2). 堆 ...

  6. Go-22-方法

    方法 Go语言同时有函数和方法,方法的本质是函数,但是方法和函数又有所不同. 函数(function)是一段具有独立功能的代码,可以被反复多次调用,从而实现代码复用. 方法(method)是一个类的行 ...

  7. 前端DDD总结与思考

    软件开发架构演化与DDD起源 单体服务架构:大概10年前,我在武汉工作的时候,甲方客户购买我们的产品,一般都是连着设备一起购买,一套软件系统,一台惠普或者戴尔的企业级服务器,再加一个黑色的铁盒,销售部 ...

  8. show engine innodb status 输出结果解读

    show engine innodb status 输出结果解读 基于MySQL 5.7.32 最近想整理一下show engine innodb status的解读,但是发现中文互联网上相关的信息要 ...

  9. ASP.Net 管道模型 VS Asp.Net Core 管道 总结

    1 管道模型  1 Asp.Net Web Form管道 请求进入Asp.Net工作进程后,由进程创建HttpWorkRequest对象,封装此次请求有关的所有信息,然后进入HttpRuntime类进 ...

  10. 详解Linux指令与文件的搜寻

    我们在管理Linux服务器时通常会进行搜索文件及目录操作,下面我们就开始了解一下linux目录结构的相关知识. 博主再奉上一套零基础入门Linux视频,带你从入门到精通 https://www.bil ...