1 PageHelper介绍
PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。
本项目在 github 的项目地址:https://github.com/pagehelper/Mybatis-PageHelper
本项目在 gitosc 的项目地址:http://git.oschina.net/free/Mybatis_PageHelper
2 PageHelper使用
2.1.集成
引入分页插件有下面2种方式,推荐使用 Maven 方式。
2.1.1. 引入 Jar 包
连接1:你可以从下面的地址中下载最新版本的 jar 包
连接2:你可以从下面的地址中下载最新版本的 jar 包
由于使用了sql 解析工具,你还需要下载 jsqlparser.jar:
http://repo1.maven.org/maven2/com/github/jsqlparser/jsqlparser/0.9.5/
2.1.2. 使用 Maven
在 pom.xml 中添加如下依赖:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>最新版本</version>
</dependency>
2. 2.配置
特别注意,新版拦截器是 com.github.pagehelper.PageInterceptor 。 com.github.pagehelper.PageHelper 现
在是一个特殊的 dialect 实现类,是分页插件的默认实现类,提供了和以前相同的用法。
2.2.1. 在 MyBatis 配置 xml 中配置拦截器插件<单独使用PageHelper时>
<!--plugins在配置文件中的位置必须符合要求,否则会报错,顺序如下:
properties?, settings?, typeAliases?, typeHandlers?, objectFactory?,
objectWrapperFactory?, plugins?, environments?, databaseIdProvider?,
mappers?
-->
<plugins>
<!-- com.github.pagehelper为PageHelper类所在包名 -->
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- 使用下面的方式配置参数,后面会有所有的参数介绍 -->
<property name="param1" value="value1"/>
</plugin>
</plugins>
2.2.2. 在 Spring 配置文件中配置拦截器插件<MyBatis整合Spring 使用PageHelper时>
使用 spring 的属性配置方式,可以使用 plugins 属性像下面这样配置:
<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="plugins">
<array>
<!--pagehelper:传入插件对象-->
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties"