由于涉及到业务处理,查询的数据需要进一步处理,而无法通过sql层进行分页查询,因此,首先要查询所需数据,然后通过业务处理,过滤出所需数据,在controller层进行逻辑分页后,再返回数据;示例代码如下:
int limit = query.getLimit(); //query 是一个分页查询集合,获取每页显示条数
int page = query.getPage(); //获取某一页的数据
int total = usableGoodsList.size(); //符合条件数据的总条数,本例为可用商品总条数
if (limit * (page - 1)<total) {
List<Goods> goods = goodsList.subList(limit * (page - 1), (limit * page > total ? total : (limit * page)));
return goods;
}
拓展:sql语句分页查询中limit
select * from table limit m,n
其中m是指记录开始的index,如果m=0,表示第一条记录,n是指从第m+1条开始,取n条。
select * from tablename limit 2,4—》即取出第3条至第6条,4条记录
版权声明:本文为qq_38286002原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。