MyBatis分页插件的使用——PageHelper

一,配置plugin

   在myBatis的配置文件中,加入如下配置:

<configuration>
		<!-- 配置分页插件 -->
	<plugins>
		<plugin interceptor="com.github.pagehelper.PageHelper">
			<!-- 指定使用的数据库是什么 -->
			<property name="dialect" value="mysql"/>
		</plugin>
	</plugins>

</configuration>

  PS:

  该插件目前支持以下数据库的物理分页:

  1. Oracle
  2. Mysql
  3. MariaDB
  4. SQLite
  5. Hsqldb
  6. PostgreSQL
  7. DB2
  8. SqlServer(2005,2008)
  9. Informix
  10. H2
  11. SqlServer2012

    配置dialect属性时,可以使用小写形式:

  oracle,mysql,mariadb,sqlite,hsqldb,postgresql,db2,sqlserver,informix,h2,sqlserver2012

  在4.0.0版本以后,dialect参数可以不配置,系统能自动识别这里提到的所有数据库。

  对于不支持的数据库,可以实现com.github.pagehelper.parser.Parser接口,然后配置到dialect参数中(4.0.2版本增加)。

二,引入jar包或通过其他方式配置依赖

      

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

三,分页步骤

            1,通过PageHelper.startPage(page,rows)开始分页;

            2,通过PageInfo获取分页结果;

@Test
	public void testPageHelper() throws Exception{
		//1,获得mapper代理对象
		ApplicationContext application=new ClassPathXmlApplicationContext("classpath:spring/applicationContext-*.xml");
		TbItemMapper itemMapper=application.getBean(TbItemMapper.class);
		//2,设置分页
		PageHelper.startPage(1, 30);
		//3,执行查询
		TbItemExample example=new TbItemExample();
		List<TbItem>list=itemMapper.selectByExample(example);
		//4,取得分页结果
		PageInfo<TbItem> pageInfo=new PageInfo<TbItem>(list);
		long total=pageInfo.getTotal();
		System.out.println(total);
		int pages=pageInfo.getPages();
		System.out.println(pages);
		int pageSize=pageInfo.getPageSize();
		System.out.println(pageSize);

	}
时间: 2024-11-02 03:39:17

MyBatis分页插件的使用——PageHelper的相关文章

Mybatis 分页插件 PageHelper

Mybatis分页插件 - PageHelper 5.0.2 发布了.如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005,2008) Informix H2 SqlServer2012 Derby 使用 PageHelper 你只需要在 classpath 中包含 pagehelper-x.x.x.ja

mybatis分页插件pagehelper.PageHelper在使用全文索引查询时出错。

问题描述 mybatis分页插件pagehelper.PageHelper在使用全文索引查询时出错. 今天将sql语句进行更改后 发现的问题. 我这个语句的意思是:查询符合该关键词并且flag为1 的所有记录 sql语句测试没有什么问题,但是在使用PageHelper进行分页时发现 返回的 的集合结果信息错了 一共有两种方式错误 这个是调试信息输出的List结果:-->Page{pageNum=1, pageSize=10, startRow=0, endRow=10, total=1336,

Mybatis 分页插件 PageHelper 5.0.2 发布

Mybatis分页插件 - PageHelper PageHelper 5.0.2 发布了.如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件.分页插件支持任何复杂的单表.多表分页,部分特殊情况请看重要提示.想要使用分页插件?请看如何使用分页插件. 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005,2008) Informix H2 SqlServer2

Mybatis 分页插件 3.6.3 发布

Mybatis分页插件 - PageHelper如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005+) 3.6.3更新日志: 解决了一个潜在的bug,对通用Mapper中的SqlMapper进行分页时,需要使用这个版本 3.6.2更新日志: 本次更新只是增加了一个异常提示,当错误的配置了多个分页插件时,

Mybatis 分页插件 3.7.1 发布

Mybatis分页插件 - PageHelper如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 SqlServer(2005+) Informix 3.7.1更新日志: 增加Informix数据库支持,设置dialect值为informix即可 解决入参为不可变Map类型时的错误 Maven坐标 <dependency> &l

自己动手写的mybatis分页插件(极其简单好用)_java

刚开始项目,需要用到mybatis分页,网上看了很多插件,其实实现原理基本都大同小异,但是大部分都只给了代码,注释不全,所以参考了很多篇文章(每篇文章偷一点代码,评出来自己的,半抄袭),才自己模仿着写出了一个适合自己项目的分页插件,话不多说,直接上代码,相比大部分文章,注释算很完整了 最重要的拦截器 package com.dnkx.interceptor; import java.sql.*; import java.util.HashMap; import java.util.Propert

mybatis分页插件缓存问题,求解

问题描述 有一个分页场景,前台通过ajax请求,后台用的mybatis分页插件,以下是插件配置:<propertyname="plugins"><list><beanclass="com.github.miemiedev.mybatis.paginator.OffsetLimitInterceptor"><propertyname="dialect"><beanclass="com.

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

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

Mybatis 分页插件 3.3.0 发布

项目地址 gitosc地址:http://git.oschina.net/free/Mybatis_PageHelper github地址:https://github.com/pagehelper/Mybatis-PageHelper 如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件. 该插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页. 经过近4个月的完善和反馈,3.3.0版本已经稳定,该版本相