iyuks 2023-11-08 10:01 采纳率: 84.7%
浏览 18

mybatis-plus分页?

以下两种都为mybatis-plus的分页,两个Page有什么区别?

分页1:

 //com.baomidou.mybatisplus.extension.plugins.pagination.Page
Page<Ssmbd> page = ssmbdService.page(new Page<>(pageNum, pageSize));
return page;

分页2:

  //   com.github.pagehelper.Page
Page<User> page = PageHelper.startPage(pageNum, pageSize);
List<User> users = userMapper.selectList(null);
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-08 12:49
    关注

    【以下回答由 GPT 生成】

    这两种分页方式分别来自于 MyBatis-Plus 和 PageHelper 这两个开源框架,它们有一些区别和使用方式也有一些差异。

    下面我来逐一解释这两种分页的区别和使用方式。

    分页方式1:MyBatis-Plus 分页

    //com.baomidou.mybatisplus.extension.plugins.pagination.Page
    Page<Ssmbd> page = ssmbdService.page(new Page<>(pageNum, pageSize));
    return page;
    

    这种方式使用的是 MyBatis-Plus 框架提供的分页插件,具体步骤如下:

    1. 引入 MyBatis-Plus 的依赖,并配置好相关的数据库连接等信息。
    2. 在数据库 mapper 中编写查询方法,并使用 MyBatis-Plus 的分页方法 page 进行分页查询。
    3. 在分页方法中传入一个 Page 对象,其中的泛型参数为实体类型,用于指定查询结果的类型。
    4. page 方法会返回一个包含分页信息和查询结果的 Page 对象。
    5. 返回 Page 对象即可获取到分页查询的结果和相关的分页信息。

    使用 MyBatis-Plus 分页的优势是可以直接使用简单的方法进行分页查询,不需要额外引入其他的分页插件,同时提供了丰富的分页查询接口和方法。

    分页方式2:PageHelper 分页

    // com.github.pagehelper.Page
    Page<User> page = PageHelper.startPage(pageNum, pageSize);
    List<User> users = userMapper.selectList(null);
    

    这种方式使用的是 PageHelper 这个开源分页插件,具体步骤如下:

    1. 引入 PageHelper 的依赖,并配置好相关的数据库连接等信息。
    2. 在数据库 mapper 中编写查询方法,并使用 PageHelper 的 startPage 方法进行分页设置。
    3. startPage 方法中传入当前页数和每页的大小。
    4. 在分页设置后,进行具体的查询操作,此时查询的结果会被分页插件自动进行分页处理。
    5. 使用 Page 对象进行分页查询时,可以通过 PageHelper 提供的方法获取分页结果和相关的分页信息。

    PageHelper 作为一个通用的分页插件,可以与各种 ORM 框架和数据库连接池配合使用,具有良好的兼容性和易用性。

    这两种分页方式的区别主要体现在两个方面:

    1. 来源不同:MyBatis-Plus 分页是 MyBatis-Plus 框架的一部分,而 PageHelper 分页则是一个独立的分页插件。
    2. 使用方式不同:MyBatis-Plus 分页直接调用对应的分页方法,而 PageHelper 分页需要使用 startPage 方法进行分页设置。

    根据具体的需求和项目情况,可以选择适合自己的分页方式。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 11月8日

悬赏问题

  • ¥15 关于移动机器人坐标计算
  • ¥30 模拟电路 logisim
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法