写点什么

【YashanDB 知识库】Mybatis-Plus 如何正确配置分页?Oracle 和 MySQL 写法都能用!

作者:数据库砖家
  • 2025-05-15
    广东
  • 本文字数:541 字

    阅读完需:约 2 分钟

问题场景

Mybatis-Plus 是 MyBatis 的增强框架,简化了 CURD 和分页操作。YashanDB 可兼容使用 Mybatis-Plus,但如未正确配置分页插件,可能会报错或查询失败。

影响范围

YashanDB 所有版本

使用 Mybatis-Plus 且未配置分页方言的项目

正确配置方式

步骤一:配置 PageHelper 支持的数据库方言

由于 YashanDB 语法支持 Oracle 的 ROWNUM 和 MySQL 的 LIMIT,所以两种方式都可选。

以 Oracle 为例:

pagehelper:helperDialect: oracle或使用 MySQL:pagehelper:helperDialect: mysql
复制代码

步骤二:设置分页拦截器为对应数据库类型

Oracle 写法示例:

MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.ORACLE));
复制代码

MySQL 写法示例:

MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
复制代码

常见错误示例

错误写法:

return new Page<>(); // 忘记设置属性
复制代码

应改为:

Page page = new Page<>(pageNum, pageSize);return page;
复制代码

建议总结

YashanDB 同时兼容 Oracle 和 MySQL 分页语法;

拦截器配置务必与 PageHelper 方言保持一致;

控制层调用 service 层时直接传 page 对象即可,分页逻辑自动完成。

用户头像

还未添加个人签名 2025-04-09 加入

还未添加个人简介

评论

发布
暂无评论
【YashanDB 知识库】Mybatis-Plus 如何正确配置分页?Oracle 和 MySQL 写法都能用!_数据库_数据库砖家_InfoQ写作社区