Repolode
pagehelper-org

pagehelper-org/Mybatis-PageHelper

为 MyBatis 查询添加物理分页的插件,可按数据库方言生成对应的分页 SQL。

Star
12,316
Fork
3,073
未关闭 Issue
66
最近提交
4天前

这是什么?

PageHelper 是 MyBatis 的分页插件,无需手写分页 SQL。开发者在执行查询前调用一个静态方法,插件会改写 SQL,使数据库只返回当前页的数据。它既能处理单表查询,也能处理较复杂的多表分页。

插件可根据 JDBC URL 自动识别数据库方言,覆盖 MySQL、PostgreSQL、Oracle、SQL Server、DB2、H2 等主流数据库,也支持达梦、人大金仓、openGauss 等国产数据库。若数据库不在列表中,可通过 dialectAlias 参数配置自定义实现。连接池方面支持 Hikari、Druid、Tomcat JDBC、DBCP 和 C3P0 的自动协商。

项目以 Maven 依赖形式发布,需要在 classpath 中包含 jsqlparser。6.x 版本要求 JDK 8 及以上,5.x 版本支持 JDK 6。针对 Spring Boot 项目,另有独立的 starter 可用。

核心功能

  • 01在数据库层面改写查询,只取回当前页的数据。
  • 02根据 JDBC URL 自动识别数据库方言。
  • 03支持多种数据库,包括达梦、人大金仓等国产数据库。
  • 04可通过 dialectAlias 配置自定义方言。
  • 05提供 Executor 级别的 QueryInterceptor 扩展接口。

适用场景

  • 为使用 MyBatis 的 Java 服务添加分页列表接口。
  • 无需手写 LIMIT 语句即可对复杂多表查询分页。
  • 在达梦、人大金仓等国产数据库上使用 MyBatis 进行分页查询。

快速上手

  1. 1

    在 pom.xml 中添加 pagehelper Maven 依赖(使用最新版本)

  2. 2

    阅读使用文档以了解配置和用法

使用前须知

  • 文档和 README 主要为中文,英文版本位于单独文件中。
  • 需要已有 MyBatis 环境,并且 classpath 中包含 jsqlparser 库。

收录于专题

标签

#mybatis#pagination#java#jdbc#orm#sql#spring-boot#mybatis-plugin

常见问题

Mybatis-PageHelper 是什么?
为 MyBatis 查询添加物理分页的插件,可按数据库方言生成对应的分页 SQL。 PageHelper 是 MyBatis 的分页插件,无需手写分页 SQL。开发者在执行查询前调用一个静态方法,插件会改写 SQL,使数据库只返回当前页的数据。它既能处理单表查询,也能处理较复杂的多表分页。
Mybatis-PageHelper 可以免费使用吗?用的什么许可证?
Mybatis-PageHelper 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
Mybatis-PageHelper 还在维护吗?
活跃维护中。Mybatis-PageHelper 最近一次提交是在 2026年11月3日。
Mybatis-PageHelper 适合用来做什么?
为使用 MyBatis 的 Java 服务添加分页列表接口。 无需手写 LIMIT 语句即可对复杂多表查询分页。 在达梦、人大金仓等国产数据库上使用 MyBatis 进行分页查询。
Mybatis-PageHelper 怎么安装和运行?
在 pom.xml 中添加 pagehelper Maven 依赖(使用最新版本) 阅读使用文档以了解配置和用法
在哪里获取 Mybatis-PageHelper?
源代码和安装说明在 GitHub 上:https://github.com/pagehelper-org/Mybatis-PageHelper

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目