这篇文章主要介绍“Mybatis-Plus分页的使用与注意事项是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Mybatis-Plus分页的使用与注意事项是什么”文章能帮助大家解决问题。
1.写个Mybatis-plus配置类:
是通过拦截器实现分页
@Configurationpublic class MybatisConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return interceptor; }}
官网复制即可,只是你需要把数据库改为你使用的,这里我是使用mysql
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); }
默认是会查询总条数,都有get、set方法,可以根据自己的需求设置(点开Page类看看)
3.注意
我们传入的page对象和查询返回的page对象是同一个
4.如果你还有查询条件
比如我们只查询id和price,id小于5的分页查询
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);}
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);}
关于“Mybatis-Plus分页的使用与注意事项是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。