java代码实现分页

Service代码
//分页
public Map fenye(List<Meter> list,Integer pagesize,Integer pageno){
    Map map=new HashMap();

    int totalcount=list.size();

    int pagecount=0;

    int m=totalcount%pagesize;

    if  (m>0)
    {
        pagecount=totalcount/pagesize+1;
    }
    else
    {
        pagecount=totalcount/pagesize;
    }
    JSONObject json =new JSONObject();
    JSONArray jsonarry = new JSONArray();
        if (m==0)
        {
            List<Meter> subList= list.subList((pageno-1)*pagesize,pagesize*(pageno));
            for (int i = 0; i < subList.size(); i++) {
                jsonarry.add(subList.get(i));
            }
            json.put("list", jsonarry);
            map.put("subList",jsonarry);
            map.put("pagecount",pagecount);
            return map;
        }
        else
        {
            if (pageno==pagecount)
            {
                List<Meter> subList= list.subList((pageno-1)*pagesize,totalcount);
                for (int i = 0; i < subList.size(); i++) {
                    jsonarry.add(subList.get(i));
                }
                json.put("list", jsonarry);
                map.put("subList",jsonarry);
                map.put("pagecount",pagecount);
                return map;
            }
            else
            {
                List<Meter> subList= list.subList((pageno-1)*pagesize,pagesize*(pageno));
                for (int i = 0; i < subList.size(); i++) {
                    jsonarry.add(subList.get(i));
                }
                json.put("list", jsonarry);
                map.put("subList",jsonarry);
                map.put("pagecount",pagecount);
                return map;
            }
    }
}
Controller代码
 
 
String gcid=RequestUtil.getParameterToString("gcid");
Integer pagesize=RequestUtil.getParameterToInteger("pagesize","请输入每页显示数量");
Integer pageno=RequestUtil.getParameterToInteger("pageno","请输入当前页数");
Map map=fengMeterService.selAllMeter(gcid,pagesize,pageno);
String Code = String.valueOf(map.get("Code"));
String isOK = String.valueOf(map.get("isOK"));
String json = String.valueOf(map.get("json"));
String Message = String.valueOf(map.get("Message"));
String pagecount = String.valueOf(map.get("pagecount"));
JSONObject jsonall =new JSONObject();
if (("0").equals(Code)) {
    if (("true").equals(isOK)) {
        String b= json.substring(1,json.length());
        String c=b.substring(1, b.length()-2);
        String[] arr= c.split("\\},\\{");
        List listarr = Arrays.asList(arr);
        JSONArray jsonarry = new JSONArray();
        for (int i = 0; i < listarr.size(); i++) {
            jsonarry.add("{"+listarr.get(i)+"}");
        }
        jsonall.put("list",jsonarry);
        jsonall.put("pageCount",pagecount);
        jsonall.put("pageNo",pageno);
        jsonall.put("pageSize",pagesize);
        ResponseUtil.writeJSON( jsonall,Constant .SYSTEM_SUCCESS);
    }else{
        ResponseUtil.writeJSON(Constant.setMsg("300", "发生错误请联系管理员"));
    }
}else{
    ResponseUtil.writeJSON(Constant.setMsg("300", Message));
}

Service调用
 
 
Map maplist=fenye(list,pagesize,pageno);
subList = String.valueOf(maplist.get("subList"));
pagecount = String.valueOf(maplist.get("pagecount"));

发布了40 篇原创文章 · 获赞 43 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/qq_37581708/article/details/76092428