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"));