Controller层实现逻辑分页

  • Post author:
  • Post category:其他


由于涉及到业务处理,查询的数据需要进一步处理,而无法通过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 版权协议,转载请附上原文出处链接和本声明。