Mybatis-Plus分页的使用与注意事项

 更新时间:2022年04月22日 15:24:52   作者:为了我的架构师  
分页查询每个人程序猿几乎都使用过,下面这篇文章主要给大家介绍了关于Mybatis-Plus分页的使用与注意事项的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1.写个Mybatis-plus配置类:

是通过拦截器实现分页

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

官网复制即可,只是你需要把数据库改为你使用的,这里我是使用mysql

image-20211127103508187

2.写接口测试

很简单

@GetMapping("/test")
    public Response test(){
        Page<Produce> producePage = new Page<>(1,1);
        Page<Produce> page = produceService.page(producePage);
        System.out.println(producePage == page);
        List<Produce> records = page.getRecords();
        for (Produce record : records) {
            System.out.println(record);
        }
        return new Response<>(records, ResultEnum.SUCCESS);
    }

image-20211127104035078

默认是会查询总条数,都有get、set方法,可以根据自己的需求设置(点开Page类看看)

image-20211127113428364

3.注意

我们传入的page对象和查询返回的page对象是同一个

image-20211127105657392

image-20211127105710551

4.如果你还有查询条件

比如我们只查询id和price,id小于5的分页查询

image-20211127112433085

1.Lambda表达式

@GetMapping("/test")
public Response test(){
    Page<Produce> producePage = new Page<>(1,2);
    Page<Produce> page = new LambdaQueryChainWrapper<>(produceService.getBaseMapper())
            .select(Produce::getPid,Produce::getPrice)
            .lt(Produce::getPid,5)
            .page(producePage);

    return new Response<>(page.getRecords(), ResultEnum.SUCCESS);
}

image-20211127112546762

2.普通查询

@GetMapping("/test")
public Response test(){
    Page<Produce> producePage = new Page<>(1,2);
    QueryWrapper<Produce> queryWrapper = new QueryWrapper<>();
    queryWrapper.select("pid","price");
    queryWrapper.lt("pid",5);
    Page<Produce> page = produceService.page(producePage, queryWrapper);
    return new Response<>(page.getRecords(), ResultEnum.SUCCESS);
}

image-20211127113153795

image-20211127113105586

总结

到此这篇关于Mybatis-Plus分页的使用与注意事项的文章就介绍到这了,更多相关Mybatis-Plus分页使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • springboot中使用jpa下hibernate的ddl-auto方式

    springboot中使用jpa下hibernate的ddl-auto方式

    这篇文章主要介绍了springboot中使用jpa下hibernate的ddl-auto方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • maven手动上传jar包示例及图文步骤过程

    maven手动上传jar包示例及图文步骤过程

    这篇文章主要为大家介绍了maven手动上传jar包示例及图文步骤过程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • java中如何反射获取一个类

    java中如何反射获取一个类

    大家说说对java反射的理解,使用反射如何获取一个类,下面小编给大家整理一些资料,关于java中如何反射获取一个类,有需要的朋友可以参考下
    2015-08-08
  • Java适配器模式的实现及应用场景

    Java适配器模式的实现及应用场景

    适配器模式是Java中一种常用的设计模式,它通过将一个类的接口转换成客户端所期望的另一种接口来实现不同接口之间的兼容性。适配器模式主要应用于系统的接口不兼容、需要扩展接口功能以及需要适应不同环境的场景
    2023-04-04
  • springboot整合xxl-job的示例代码

    springboot整合xxl-job的示例代码

    这篇文章主要介绍了springboot整合xxl-job的示例代码,主要分为三大模块,分别是调度中心、执行器和配置定时任务的过程,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Spring中bean集合注入的方法详解

    Spring中bean集合注入的方法详解

    Spring作为项目中不可缺少的底层框架,提供的最基础的功能就是bean的管理了。bean的注入相信大家都比较熟悉了,但是有几种不太常用到的集合注入方式,可能有的同学会不太了解,今天我们就通过实例看看它的使用
    2022-07-07
  • JAVA提高第八篇 动态代理技术

    JAVA提高第八篇 动态代理技术

    这篇文章主要为大家详细介绍了JAVA动态代理技术的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • 将RestTemplate的编码格式改为UTF-8,防止乱码问题

    将RestTemplate的编码格式改为UTF-8,防止乱码问题

    这篇文章主要介绍了将RestTemplate的编码格式改为UTF-8,防止乱码问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • java面试常见问题---ConcurrentHashMap

    java面试常见问题---ConcurrentHashMap

    ConcurrentHashMap是由Segment数组结构和HashEntry数组结构组成。Segment的结构和HashMap类似,是一种数组和链表结构,今天给大家普及java面试常见问题---ConcurrentHashMap知识,一起看看吧
    2021-06-06
  • 使用logback实现日志打印过滤

    使用logback实现日志打印过滤

    这篇文章主要介绍了使用logback实现日志打印过滤的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07

最新评论