当前位置: 首页 > news >正文

池州网站开发公司招聘外贸公司大全

池州网站开发公司招聘,外贸公司大全,网站设计心得,没有ipc备案的网站MyBatis 分页插件使用教程 MyBatis 是一款优秀的持久层框架,但原生的 MyBatis 并不支持分页查询。为了简化分页操作,MyBatis 官方和第三方提供了多种分页插件,最常用的就是 MyBatis-Plus 的分页插件。本文详细介绍 MyBatis-Plus 分页插件的使…

MyBatis 分页插件使用教程

MyBatis 是一款优秀的持久层框架,但原生的 MyBatis 并不支持分页查询。为了简化分页操作,MyBatis 官方和第三方提供了多种分页插件,最常用的就是 MyBatis-Plus 的分页插件。本文详细介绍 MyBatis-Plus 分页插件的使用方法。

1. 什么是分页插件

分页插件的作用是拦截查询 SQL,在执行查询之前或之后自动拼接分页相关的 SQL,帮助开发者简化分页处理逻辑,无需手动拼接 LIMIT 和 OFFSET。

2. 环境准备

引入 MyBatis-Plus 依赖

<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version>
</dependency>

配置分页插件

创建配置类:

@Configuration
public class MybatisPlusConfig {@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));return interceptor;}
}

3. 分页查询使用示例

实体类示例

@Data
public class User {private Long id;private String name;private Integer age;
}

Mapper 接口

@Mapper
public interface UserMapper extends BaseMapper<User> {
}

分页查询示例

@Autowired
private UserMapper userMapper;@Test
public void testPage() {Page<User> page = new Page<>(1, 5); // 第1页,每页5条Page<User> userPage = userMapper.selectPage(page, null);System.out.println("总记录数: " + userPage.getTotal());System.out.println("总页数: " + userPage.getPages());userPage.getRecords().forEach(System.out::println);
}

4. 带条件的分页查询

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.ge("age", 20);Page<User> page = new Page<>(1, 3);
Page<User> userPage = userMapper.selectPage(page, queryWrapper);

5. 注意事项

  • 分页插件需要配置 MybatisPlusInterceptor
  • Page 对象的两个重要参数:
    • 当前页数 current
    • 每页显示条数 size
  • 分页结果包含:
    • 总记录数 total
    • 总页数 pages
    • 当前页数据 records

6. 小结

MyBatis-Plus 分页插件极大简化了分页查询的实现,开发者无需关心底层的 SQL 拼接,只需传入分页参数即可快速完成分页查询。它是企业开发中非常实用的功能,推荐在 MyBatis 项目中广泛使用。

http://www.dtcms.com/a/434528.html

相关文章:

  • WSL的安装与使用详解
  • 内网横向移动技术与防御详解
  • PYTHON:Python 新版本下载安装更新py文件Pycharm运行指南
  • Kubernetes中的service
  • Coze源码分析-资源库-编辑工作流-后端源码-流程/技术/总结
  • 医院网站建设招标公告惠州网站建设科技有限公司
  • 英语学习-Saints043-1
  • 大模型提示学习与思维链
  • 在线公司logo设计河南seo优化
  • 滑动窗口题目:最小覆盖子串
  • 【读书笔记】《深奥的简洁》
  • 支付宝手机网站支付贵阳门户网站
  • macOS 终端配置全攻略:zsh、bash_profile、zprofile、zshrc 到 nvm 配置的完整科普
  • Matlab通过GUI实现点云的Loss配准
  • 用户体验最好的网站做网站 参考文献
  • 离散与连续随机变量
  • 自适应网站好吗电子商务seo名词解释
  • 深入剖析 MySQL 中 binlog 与 redolog:区别、联系及在数据更新中的作用​
  • tensor转numpy,numpy转tensor
  • [创业之路-653]:社会产品与服务的分类
  • 洛谷题解P1249 最大乘积
  • Java使用easypoi填充数据到word
  • 位运算题3:将整数奇偶位互换
  • 计算机毕业设计 基于EChants的海洋气象数据可视化平台设计与实现 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
  • 卡盟网站顶图怎么做西安知名的集团门户网站建设公司
  • Python基础入门例程84-NP84 列表中第一次出现的位置
  • 基于腾讯CODING Maven的Android库发布
  • 郑州官方发布班级优化大师
  • 10.2 刷题知识点总结(1) ---- 正则表达式
  • SPI总线介绍