MyBatis 分页插件 PageHelper 6.0.0 发布
6.0.0 - 2023-11-05
- 基于jdk8适配,6.0开始不支持jdk6和7,如果有需要可以使用5.x版本
- 增加异步count支持,全局配置
asyncCount
,默认false
,单次设置:PageHelper.startPage(1, 10).enableAsyncCount()
; 异步使用独立连接(事务)查询,有增删改操作影响查询时不适合开启异步查询。closed #334 - JSqlParser默认开启
parser.withSquareBracketQuotation(true)
,支持 SqlServer[]
- feat: 在
PageInfo
类中新增了用以进行数据对象转换的方法<E> PageInfo<E> convert(Page.Function<T, E> function)
by codeke CountSqlParser
改为接口,允许通过countSqlParser
参数替换为自己的实现,支持 #772dialectAlias
支持简化配置,例如dm=oracle;oracle=oracle9i
,直接引用现在的缩写,不用写类全名countColumn
添加注入检测,fixed #686- 增加
PageParam
类,不内嵌对象(会影响使用),如果想用可以继承该对象,closed #562 - 所有异常信息改为英文提示
- 放开
setLocalPage
,支持 #771 - 解决
sqlserver
带union sql解析时处理order by错误的问题,fixed #768 - 优化total逻辑,解决指定不分页查询,同时指定order by时无效的问题,fixed #641
- 修改 dialect 实例化逻辑,保证类完成配置后使用,fixed #742
dialectAliasMap
改为LinkedHashMap
,可以按配置顺序进行匹配,fixed #758- 行云数据库分页BUG修复 by maimaitiyaer_bonc
该插件目前支持以下数据库的物理分页 PageAutoDialect:
static {
//注册别名
registerDialectAlias("hsqldb",HsqldbDialect.class);
registerDialectAlias("h2",HsqldbDialect.class);
registerDialectAlias("phoenix",HsqldbDialect.class);
registerDialectAlias("postgresql",PostgreSqlDialect.class);
registerDialectAlias("mysql",MySqlDialect.class);
registerDialectAlias("mariadb",MySqlDialect.class);
registerDialectAlias("sqlite",MySqlDialect.class);
registerDialectAlias("herddb",HerdDBDialect.class);
registerDialectAlias("oracle",OracleDialect.class);
registerDialectAlias("oracle9i",Oracle9iDialect.class);
registerDialectAlias("db2",Db2Dialect.class);
registerDialectAlias("as400",AS400Dialect.class);
registerDialectAlias("informix",InformixDialect.class);
//解决 informix-sqli #129,仍然保留上面的
registerDialectAlias("informix-sqli",InformixDialect.class);
registerDialectAlias("sqlserver",SqlServerDialect.class);
registerDialectAlias("sqlserver2012",SqlServer2012Dialect.class);
registerDialectAlias("derby",SqlServer2012Dialect.class);
//达梦数据库,https://github.com/mybatis-book/book/issues/43
registerDialectAlias("dm",OracleDialect.class);
//阿里云PPAS数据库,https://github.com/pagehelper/Mybatis-PageHelper/issues/281
registerDialectAlias("edb",OracleDialect.class);
//神通数据库
registerDialectAlias("oscar",OscarDialect.class);
registerDialectAlias("clickhouse",MySqlDialect.class);
//瀚高数据库
registerDialectAlias("highgo",HsqldbDialect.class);
//虚谷数据库
registerDialectAlias("xugu",HsqldbDialect.class);
registerDialectAlias("impala",HsqldbDialect.class);
registerDialectAlias("firebirdsql",FirebirdDialect.class);
//人大金仓数据库
registerDialectAlias("kingbase",PostgreSqlDialect.class);
// 人大金仓新版本kingbase8
registerDialectAlias("kingbase8",PostgreSqlDialect.class);
//行云数据库
registerDialectAlias("xcloud",CirroDataDialect.class);
//openGauss数据库
registerDialectAlias("opengauss",PostgreSqlDialect.class);
//注册 AutoDialect
//想要实现和以前版本相同的效果时,可以配置 autoDialectClass=old
registerAutoDialectAlias("old",DefaultAutoDialect.class);
registerAutoDialectAlias("hikari",HikariAutoDialect.class);
registerAutoDialectAlias("druid",DruidAutoDialect.class);
registerAutoDialectAlias("tomcat-jdbc",TomcatAutoDialect.class);
registerAutoDialectAlias("dbcp",DbcpAutoDialect.class);
registerAutoDialectAlias("c3p0",C3P0AutoDialect.class);
//不配置时,默认使用 DataSourceNegotiationAutoDialect
registerAutoDialectAlias("default",DataSourceNegotiationAutoDialect.class);
}
如果你使用的数据库不在这个列表时,你可以配置 dialectAlias
参数。
这个参数允许配置自定义实现的别名,可以用于根据 JDBCURL 自动获取对应实现,允许通过此种方式覆盖已有的实现,配置示例如(多个配置时使用分号隔开):
<property name="dialectAlias" value="oracle=com.github.pagehelper.dialect.helper.OracleDialect"/>
<!-- 6.0支持下面的引用方式,引用 Oracle9iDialect.class 的实现 -->
<property name="dialectAlias" value="oracle=oracle9i"/>
<!-- 6.0支持下面的引用方式,达梦使用oracle语法分页,简化类全名写法 -->
<property name="dialectAlias" value="dm=oracle"/>
PageHelper Spring Boot Starter 发布 2.0.0
v2.0.0 - 2023-11-05
- 升级 PageHelper 到 6.0.0,支持异步 count 等功能,详细查看 6.0
- 升级 MyBatis 到 3.5.15
- 升级 springboot 到 2.7.17
- 新增参数
asyncCount
,增加异步count支持,默认false
,单次设置:PageHelper.startPage(1, 10).enableAsyncCount()
; - 新增参数
countSqlParser
,CountSqlParser
改为接口,允许通过countSqlParser
参数替换为自己的实现
在 pom.xml 中添加依赖:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
AJ-Report V1.2.1 已经发布,可视化拖拽编辑图表工具
AJ-Report V1.2.1 已经发布,可视化拖拽编辑图表工具 此版本更新内容包括: 1、修复柱状图-竖展示功能显示异常 2、xAxis数值取消默认自动换行,增加自动换行开关 3、文档更新 详情查看:https://gitee.com/anji-plus/report/releases/V1.2.1
-
下一篇
fastjson 2.0.42 版本发布
这又是例行的BUG修复小版本,大家按需升级。 Issues 修复JSONB协议反序列化读取java.time类型的NULL值报错的问题#1855 反序列化增加JSONReader.Feature.ErrorOnUnknownProperties,支持当输入非预期字段时报错#1944 修复使用兼容包的JSONPath.set不兼容的问题#1922 修复反序列化超过256位小数时报错的问题,缺省支持2048位小数#1919 修复序列化时List类型字段配置JSONField.serializeUsing无效的问题#1948 修复序列化时List类型字段配置JSONField.serializeFeatures WriteClassName无效的问题#1947 修复序列化时WriteNullNumberAsZero和WriteLongAsString组合不生效的问题#1893 修复JSONPath在连续数组访问时空值报错的问题#1965 修复不支持多行注释的问题#1954 修复输入对象类型输入空数组"[]"报错的问题(兼容)#1971 修复处理JacksonAnnotation的问题#198...
相关文章
文章评论
共有0条评论来说两句吧...