本文主要是介绍pageHelper分页超过最大页数后还会返回数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题描述:
在微服务里面做查询接口,用到pageHelper,数据库只有8行数据, 问题来了:
pageNum=1&pageSize=10,返回的数据是那8条数据;
pageNum=2&pageSize=10, pageNum=3&pageSize=10等......仍然会返回数据!!!
原因:
这是pageHelper里面自带的一个功能,叫做reasonable分页参数合理化,3.3.0以上版本可用,默认是false。启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页; 禁用合理化时,如果pageNum<1或pageNum>pages会返回空数据。
解决:
一般项目里面加入<property name="reasonable" value="true" />
,
Spring Boot项目里面:pagehelper.reasonable=true 当为false的时候,如果当前页超过最大页数后,就不会返回数据,当为true的时候,当前页超过最大页数后,会返回最后一页的数据
# PageHelper分页插件
pagehelper:helperDialect: mysqlreasonable: falsesupportMethodsArguments: trueparams: count=countSql
总结:具体是true还是false,就可以根据自己的业务场景去设置,超出最大页,需要返回数据就设为true,不需要返回数据就设为false。
这篇关于pageHelper分页超过最大页数后还会返回数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!