Quantcast
Channel: OSCHINA 社区最新新闻
Viewing all articles
Browse latest Browse all 44801

Mybatis 分页插件 PageHelper 4.2.0 发布

$
0
0

Mybatis分页插件 - PageHelper

如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件。

分页插件支持任何复杂的单表、多表分页,部分特殊情况请看重要提示

想要使用分页插件?请看如何使用分页插件

物理分页

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

  1. Oracle

  2. Mysql

  3. MariaDB

  4. SQLite

  5. Hsqldb

  6. PostgreSQL

  7. DB2

  8. SqlServer(2005,2008)

  9. Informix

  10. H2

  11. SqlServer2012

  12. Derby

Maven坐标:

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

4.2.0

  • 使用新的方式进行分页,4.2版本是从5.0版本分离出来的一个特殊版本,这个版本兼容4.x的所有功能,5.0版本时为了简化分页逻辑,会去掉部分功能,4.2.0是4.x的最后一个版本,有bug还会维护。

  • 支持 MyBatis 3.1.0+ 版本

  • 增加对 Derby 数据库的支持

  • 对除 informix 外的全部数据库进行测试,全部通过

  • PageHelper增加手动清除方法clearPage()

  • 解决 SqlServer 多个with(nolock)时出错的问题

  • 对CountMappedStatement 进行缓存,配置方式见BaseSqlUtil 319行

  • 由于SqlServer的sql处理特殊,因此增加了两个SQL缓存,具体配置参考SqlServerDialect类

  • 添加 sqlserver 别名进行排序功能,在解析sql时,会自动将使用的别名转换成列名 by panmingzhi

  • 新增sqlCacheClass参数,该参数可选,可以设置sql缓存实现类,默认为SimpleCache,当项目包含guava时,使用GuavaCache,也可以通过参数sqlCacheClass指定自己的实现类,有关详情看com.github.pagehelper.cache包。

  • 解决#135,增加/*keep orderby*/注解,SQL中包含该注释时,count查询时不会移出order by

  • sqlserver 没有 orderby 时,使用order by rand() 进行排序,不再强制要求有 order by。#82 #118

这次更新最大的改动就是分页的实现方式,这本来是属于5.0版本的内容,但是为了兼容4.x版本,特别提供的4.2.0版本。新的 5.0 版本会在 2017年初发布,新的分页插件设计来源于我正在写的 MyBatis 一书。

由于新的实现方式,分页插件现在可以支持 MyBatis 3.1.0+ 版本。


Viewing all articles
Browse latest Browse all 44801

Trending Articles