首先前台会传来两个参数,分别是rows(一页数据的大小,即一页有多少条数据)和page(第几页),根据这两个参数可以计算出从数据库中从第几条数据开始取和要取多少条数据。数据取出来后,因为easyUI用的是ajax分页,因此要对数据进行一些处理,第一:把数据转化为jsonArray的形式,再把数据放到jsonObject中取名为rows,另外就是要计算出这次的数据的数目,把它也放到jsonObject中,取名为total,总共就是要返回rows和total这两个数据。
@RequestMapping("/list")
public String list(@RequestParam(value="page",required=false)String page,
@RequestParam(value="rows",required=false)String rows,
User s_user,HttpServletResponse response) throws Exception{
PageBean pageBean=new PageBean(Integer.parseInt(page), Integer.parseInt(rows));
Map<String,Object> map=new HashMap<String,Object>();
map.put("userName", StringUtil.formatLike(s_user.getUserName()));
map.put("start", pageBean.getStart());
map.put("size", pageBean.getPageSize());
List<User> userList=userService.find(map);
long total=userService.getTotal(map);
JSONObject result=new JSONObject();
JSONArray jsonArray=JSONArray.fromObject(userList);
result.put("rows", jsonArray);
result.put("total", total);
ResponseUtil.write(response, result);
return null;
}