本文为mybatis系列文档的第4篇,前三篇请拜访上面的网址。
- 小书MybatisPlus第1篇-整合SpringBoot疾速开始增删改查
- 小书MybatisPlus第2篇-条件结构器的利用及总结
- 小书MybatisPlus第3篇-自定义SQL
一、让Spring Boot-MybatisPlus反对分页
在曾经集成了Mybatis Plus的Spring我的项目中退出如下分页拦截器的配置,让MybatisPlus反对分页
@Configurationpublic class MybatisPlusConfiguration { //配置分页拦截器 @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); }}
二、单表查问分页-表格分页
@Testpublic void testSelect() { LambdaQueryWrapper<User> query = new LambdaQueryWrapper<>(); query.ge(User::getAge,10) //查问条件:年龄大于10 .orderByDesc(User::getAge); //依照年龄的倒序排序 Page<User> page = new Page<> (1,10); //查问第1页,每页10条数据 userMapper.selectPage(page,query); //page分页信息,query查问条件 System.out.println("总页数:"+ page.getPages()); System.out.println("总记录数:"+ page.getTotal()); // 分页返回的对象与传入的对象是同一个 List<User> list = page.getRecords(); list.forEach(System.out::println);}
查问输入后果如下:
总页数:1总记录数:6User(id=3, name=Tom, age=28, email=test3@baomidou.com)User(id=5, name=Billie, age=24, email=test5@baomidou.com)User(id=4, name=Sandy, age=21, email=test4@baomidou.com)User(id=2, name=Jack, age=20, email=test2@baomidou.com)User(id=1, name=Jone, age=18, email=test1@baomidou.com)User(id=1280261858003038209, name=字母哥, age=18, email=null)
在分页查问过程中,一共执行了两条SQL
# 第一条SQL用于查问在query条件下的总条数SELECT COUNT(1) FROM user WHERE age >= ? # 第二条SQL用于查问具体的数据SELECT id,name,age,email FROM user WHERE age >= ? ORDER BY age DESC LIMIT ?,?
这种分页形式比拟适宜于传统利用中,表格分页的开发。须要给出总条数,以及每页多少条。
三、不查问总记录数的分页-下拉分页
在一些古代的互联网资讯网站,或者利用app。通常不会给出数据的总条数,而是通过鼠标或者手势,每次下拉都加载n条数据。
这种状况下的分页通常就不须要查问总条数了,如果查问总条数节约数据库的计算资源,使响应工夫变长。所以咱们应该只做分页数据查问,不查问总条数。设置page分页的第三个参数为false。
输入后果总页数和总条数都是0,然而分页数据失常查问回来了。
总页数:0总记录数:0User(id=3, name=Tom, age=28, email=test3@baomidou.com)User(id=5, name=Billie, age=24, email=test5@baomidou.com)User(id=4, name=Sandy, age=21, email=test4@baomidou.com)User(id=2, name=Jack, age=20, email=test2@baomidou.com)User(id=1, name=Jone, age=18, email=test1@baomidou.com)User(id=1280261858003038209, name=字母哥, age=18, email=null)
只执行了这样一个SQL
ELECT id,name,age,email FROM user WHERE age >= ? ORDER BY age DESC LIMIT ?,?
欢送关注我的博客,外面有很多精品合集
- 本文转载注明出处(必须带连贯,不能只转文字):字母哥博客。
感觉对您有帮忙的话,帮我点赞、分享!您的反对是我不竭的创作能源! 。另外,笔者最近一段时间输入了如下的精品内容,期待您的关注。
- 《手摸手教你学Spring Boot2.0》
- 《Spring Security-JWT-OAuth2一本通》
- 《实战前后端拆散RBAC权限管理系统》
- 《实战SpringCloud微服务从青铜到王者》
- 《VUE深入浅出系列》