• Mybatis-Plus(插件篇 ==> 分页插件


    本章导学:

    • 使用MP为我们提供的分页插件

    MP为我们提供了如下的一个方法selectPage() 

    我们点进去看看这个方法需要什么参数

    显而易见,我们需要传递一个泛型P,这个泛型继承于IPage对象,和一个条件构造器 

    我们点进去IPage看看

    当前的IPage是一个接口,我们看看它有哪些实现类 

    发现它只有一个Page实现类,我们进去看看这个Page类是什么东东

    哦~原来这个Page为我们封装好了页码,数据条数,页数, 等信息

    这个构造器传入页码和每页展示条数就好了


    我们把测试代码写完,看一下运行结果

    1. /**
    2. * 分页测试
    3. */
    4. @Test
    5. public void test01(){
    6. //第三页,每页展示2条数据
    7. IPage ipage = new Page(3,2);
    8. IPage page = mqDao.selectPage(ipage, null);
    9. System.out.println("当前页码值:"+page.getCurrent());
    10. System.out.println("每页显示数:"+page.getSize());
    11. System.out.println("一共多少页:"+page.getPages());
    12. System.out.println("一共多少条数据:"+page.getTotal());
    13. System.out.print("数据:");
    14. page.getRecords().forEach(System.out::println);
    15. }

      

    奇怪的是,它查询出来的数据还是所有数据,并没有起到我们的分页效果

    我们都知道分页的原理是where limit ?,?

    那是不是只要在这条查询语句后加上where条件就好了,我们可以把这条语句拦截下来,为它添加我们的where条件,这也是AOP思想的提现(在原有代码上只进行增强,不做修改)

    我们新建一个配置类

    1. import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
    2. import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
    3. import org.springframework.context.annotation.Bean;
    4. import org.springframework.context.annotation.Configuration;
    5. @Configuration
    6. public class MpConfig {
    7. @Bean
    8. public MybatisPlusInterceptor mybatisPlusInterceptor(){
    9. //1,定义Mp拦截器
    10. MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
    11. //2,添加具体的拦截器,这里添加的为分页拦截器
    12. mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
    13. return mybatisPlusInterceptor;
    14. }

    再次运行测试看看结果

    大功告成 

  • 相关阅读:
    利用Pycharm将python程序打包为exe文件(亲测可用)
    flv.js的追帧、断流重连及实时更新的直播优化方案
    信息化发展77
    软考软件设计师-存储管理-文件管理-计算机网络(中
    java算法day5
    html页面提交数据后,数据库有新增但为空值
    Linux之管道、环境变量与常用命令
    【 Vue 路由 跳转 路由守卫 】
    golang协程原理
    windows MNN 的使用流程(Python版)
  • 原文地址:https://blog.csdn.net/weixin_48841931/article/details/127045513