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. Java8的新特性--并行流与串行流

    目录 写在前面 Fork/Join框架 Fork/Join框架与传统线程池的区别 传统的线程池 Fork/Join框架 Fork/Join框架的使用 Java8中的并行流 写在前面 我们都知道,在开发 ...

  2. Jaeger Client Go 链路追踪|入门详解

    目录 从何说起 Jaeger 部署 Jaeger 从示例了解 Jaeger Client Go 了解 trace.span tracer 配置 Sampler 配置 Reporter 配置 分布式系统 ...

  3. Android Studio中批量注释 Java代码

    •ctrl+/ 选中需要注释的多行代码,然后按 ctrl + / 实现多行快速注释: 再次按下 ctrl + / 取消注释. •ctrl+shift+/ 选中一行或几行代码,按 ctrl + shif ...

  4. Android Studio 如何在TextView中设置图标并按需调整图标大小

    •任务 相信大家对这张图片都不陌生,没错,就是 QQ动态 向我们展示的界面. 如何实现呢? •添加文字并放入图标 新建一个 Activity,取名为 QQ,Android Studio 自动为我们生成 ...

  5. Istio 网络弹性 实践 之 故障注入 和 调用重试

    网络弹性介绍 网络弹性也称为运维弹性,是指网络在遇到灾难事件时快速恢复和继续运行的能力.灾难事件的范畴很广泛,比如长时间停电.网络设备故障.恶意入侵等. 重试(attempts) Istio 重试机制 ...

  6. Java学习笔记--文件IO

    简介 对于任何程序设计语言,输入和输出(Input\Output)都是系统非常核心的功能,程序运行需要数据,而数据的获取往往需要跟外部系统进行通信,外部系统可能是文件.数据库.其他程序.网络.IO设备 ...

  7. 【C/C++】面向对象开发的优缺点

    原创文章,转发请注明出处. 面向对象开发的优缺点 面向对象开发 是相对于 面向过程开发 的一种改进思路. 由于流水线式的面相过程开发非常直接,高效.在面对一些简单项目时,只需要几百行,甚至是几十行代码 ...

  8. 7. Centos7 yum 出现could not retrieve mirrorlist 最终解决方案

    Step 1: sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33 Step 2:  将ONBOOT改为yes,wq!保存退出 Step 3:重启ne ...

  9. HUAWEI AppGallery Connect获得SOC国际权威认证,多举措保护信息和隐私安全

    近日,华为应用市场AppGallery Connect(简称AGC)一次性成功通过国际权威标准组织"美国注册会计师协会(AICPA)"认定的SOC1 Type2.SOC2 Type ...

  10. junit+maven单元测试

    一.概念 junit是一个专门测试的框架 集合maven进行单元测试,可批量测试类中的大量方法是否符合预期 二.作用:单元测试:测试的内容是类中的方法,每一个方法都是独立测试的.方法是测试的基本单位. ...