开发者社区> soledad_lhc> 正文

MyBatis分页插件的使用——PageHelper

简介: 一,配置plugin    在myBatis的配置文件中,加入如下配置:   PS:   该插件目前支持以下数据库的物理分页: Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL DB2 Sql...
+关注继续查看


一,配置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);
		
	}




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MyBatis的分页原理
写作目的 最近看到了一篇MyBatis的分页实现原理,文章里描述到使用ThreadLocal,其实想主要想看看ThreadLocal的巧妙使用,并且看一下分页是如何实现的。
30 0
Mybatis-Plus学习(三):实现分页
在之前的开发学习中,我们用过原始的limit来实现分页,也用过一些第三方工具,如PageHelper。Mybatis-Plus中也实现了分页的插件,并且用起来相当便捷。
17 0
mybatis:DatetypeHandlers类型转换+plugin查询分页
mybatis:DatetypeHandlers类型转换+plugin查询分页
20 0
Spring Boot中的Mybatis分页插件-pagehelper的使用
Spring Boot中的Mybatis分页插件-pagehelper的使用
100 0
SpringCloud+MyBatis分页处理(前后端分离)
分页处理,这是做JavaWeb项目中常见的场景。
83 0
Mybatis分页插件PageHelper的学习与使用
Mybatis分页插件PageHelper的学习与使用
104 0
【手撕Mybatis的分页插件】【查询结果集是0,直接返回[]】【提高查询我们的性能】
【手撕Mybatis的分页插件】【查询结果集是0,直接返回[]】【提高查询我们的性能】
38 0
Mybatis中sql拦截增强-AOP+interceptor实现分页和排序
基于interceptor可以实现sql的完整打印,除了实现打印之外。其实还可以实现分页和排序,下面的分页和排序基于aop+mybatis的interceptor实现。其本质还是对mappedStament的boundSql进行增强。 下面的项目来源于github,通过这个我们可以很好的学习mybatis中插件interceptor的使用。
213 0
springmvc+mybatis集成PageHelper分页插件
springmvc+mybatis集成PageHelper分页插件
61 0
+关注
soledad_lhc
csdn博客:http://blog.csdn.net/lhc1105
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题)
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载