Mybatis图文并茂讲解分页插件
作者:流楚丶格念 时间:2023-04-11 22:38:44
1. Mybatis分页插件
1.1 分页插件介绍
分页可以将很多条结果进行分页显示。
如果当前在第一页,则没有上一页。如果当前在最后一页,则没有下一页。
需要明确当前是第几页,这一页中显示多少条结果。
MyBatis分页插件总结
在企业级开发中,分页也是一种常见的技术。而目前使用的 MyBatis 是不带分页功能的,如果想实现分页的 功能,需要我们手动编写 LIMIT 语句。但是不同的数据库实现分页的 SQL 语句也是不同的,所以手写分页 成本较高。这个时候就可以借助分页插件来帮助我们实现分页功能。
PageHelper:第三方分页助手。将复杂的分页操作进行封装,从而让分页功能变得非常简单。
1.2 分页插件的使用
MyBatis可以使用第三方的插件来对功能进行扩展,分页助手PageHelper是将分页的复杂操作进行封装,使用简单的方式即可获得分页的相关数据
开发步骤:
①导入与PageHelper的jar包
②在mybatis核心配置文件中配置PageHelper插件
<!-- 注意:分页助手的插件 配置在通用mapper之前 -->
<plugin interceptor="com.github.pagehelper.PageHelper">
<!-- 指定方言 -->
<property name="dialect" value="mysql"/>
</plugin>
③测试分页数据获取
@Test
public void testPageHelper(){
//设置分页参数
PageHelper.startPage(1,2);
List<User> select = userMapper2.select(null);
for(User user : select){
System.out.println(user);
}
}
1.3 分页插件的参数获取
获得分页相关的其他参数:
//其他分页的数据
PageInfo<User> pageInfo = new PageInfo<User>(select);
System.out.println("总条数:"+pageInfo.getTotal());
System.out.println("总页数:"+pageInfo.getPages());
System.out.println("当前页:"+pageInfo.getPageNum());
System.out.println("每页显示长度:"+pageInfo.getPageSize());
System.out.println("是否第一页:"+pageInfo.isIsFirstPage());
System.out.println("是否最后一页:"+pageInfo.isIsLastPage());
运行结果:
1.4 分页插件知识小结
分页:可以将很多条结果进行分页显示。
分页插件 jar 包: pagehelper-5.1.10.jar jsqlparser-3.1.jar
<plugins>
:集成插件标签。
分页助手相关 API
PageHelper分页助手功能类
函数 | 说明 |
---|---|
startPage() | 设置分页参数 |
PageInfo | 分页相关参数功能类。 |
getTotal() | 获取总条数 |
getPages() | 获取总页数 |
getPageNum() | 获取当前页 |
getPageSize() | 获取每页显示条数 |
getPrePage() | 获取上一页 |
getNextPage() | 获取下一页 |
isIsFirstPage() | 获取是否是第一页 |
isIsLastPage() | 获取是否是最后一页 |
来源:https://yangyongli.blog.csdn.net/article/details/125588468
标签:Mybatis,分页插件
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Netty分布式高性能工具类FastThreadLocal和Recycler分析
2023-03-20 09:13:09
![](https://img.aspxhome.com/file/2023/7/97957_0s.png)
详解Java实现简单SPI流程
2022-12-11 16:02:23
Java全面细致讲解Cookie与Session及kaptcha验证码的使用
2021-09-03 23:10:56
Android中资源文件用法简单示例
2023-09-24 22:29:04
Mybatis查询时,区分大小写操作
2021-08-11 14:10:54
java list去重操作实现方式
2021-09-22 13:26:08
C#控制台程序使用Log4net日志组件详解
2023-02-15 19:44:26
![](https://img.aspxhome.com/file/2023/2/80052_0s.png)
Java微信支付-微信红包
2023-11-01 01:07:05
![](https://img.aspxhome.com/file/2023/6/66166_0s.png)
springboot + mybatis + druid + 多数据源的问题详解
2023-01-24 15:59:58
![](https://img.aspxhome.com/file/2023/2/84282_0s.png)
Android使用Gradle依赖配置compile、implementation与api的区别介绍
2023-09-27 18:11:40
在Framework 4.0中:找出新增的方法与新增的类(一)
2021-07-07 05:26:07
![](https://img.aspxhome.com/file/2023/6/68626_0s.png)
Java使用FileInputStream流读取文件示例详解
2021-05-26 00:57:58
![](https://img.aspxhome.com/file/2023/0/64430_0s.jpg)
linux系统 java环境变量的配置方法
2022-12-10 09:34:11
IDEA 单元测试覆盖技巧分享
2022-09-09 03:50:26
![](https://img.aspxhome.com/file/2023/0/96270_0s.jpg)
java实现选课系统
2021-08-15 07:43:44
Java通过jersey实现客户端图片上传示例
2022-09-17 15:44:24
![](https://img.aspxhome.com/file/2023/4/86804_0s.jpg)
C#实现字体旋转的方法
2023-01-19 06:41:40
MyBatis ofType和javaType的区别说明
2021-09-10 22:56:43
C#设置页面单位和缩放的方法
2023-06-09 12:59:27
Java 将PPT幻灯片转为HTML文件的实现思路
2022-12-12 12:00:35
![](https://img.aspxhome.com/file/2023/2/76472_0s.png)