SpringBoot使用mybatis-plus分页查询无效的问题解决
问题概述
SpringBoot中使用mybatis-plus实现分页查询时,提供一个page分页对象和一个QueryWrapper条件类对象,在使用Service.page(page,queryWrapper)方法进行分页查询时,发现并未查询到分页的结果,反而是查询到全部符合条件的结果。
public List<User> getOrdinaryUser() { //创建page分页对象 Page page=new Page(1,3); //查询身份代码为1的普通用户 QueryWrapper queryWrapper=new QueryWrapper<>().eq("identity","1"); IPage page1 = this.page(page, queryWrapper); System.out.println("查询的结果:"+page1.getRecords()); return page1.getRecords(); }
发现其sql语句也是未添加limit
解决方法
在Springboot中,若是要使用mybatis-plus实现查询分页,首先需要配置一个分页配置类即可,配置之后即可实现分页查询。
@Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));//如果配置多个插件,切记分页最后添加 //interceptor.addInnerInterceptor(new PaginationInnerInterceptor()); 如果有多数据源可以不配具体类型 否则都建议配上具体的DbType return interceptor; } }
若还未分页成功,则可以原因之一是数据库中没有数据,也会导致sql语句中不出现limit,为此在实现分页查询的功能时,切要添加测试数据到数据库中。
这就是springboot使用mybatis-plus进行分页查询失败的原因之一。
到此这篇关于SpringBoot使用mybatis-plus分页查询无效的问题解决的文章就介绍到这了,更多相关SpringBoot mybatis-plus分页查询无效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
实战干货之基于SpringBoot的RabbitMQ多种模式队列
RabbitMQ 是一个由Erlang语言开发的AMQP的开源实现,支持多种客户端。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗,下文将带你深入了解 RabbitMQ 多种模式队列2021-09-09
最新评论