PageInfo实现分页


import com.github.pagehelper.Page;
需要导入的jar Controller
import com.github.pagehelper.PageInfo;


@RequestMapping(value = "/getMoreBook",produces="application/json;charset=utf-8")//处理返回中文乱码
@ResponseBody
public String getMoreBook(String type,String majorCate,@RequestParam(required = false,defaultValue = "1")String page) {
PageInfo<Book> books=new PageInfo<Book>();
books=bookServiceImpl.getMoreBook(type,majorCate,page);
JSONObject jsObj= new JSONObject();
jsObj.put("status",1);
jsObj.put("msg","ok");
jsObj.put("content",books);
return jsObj.toString();
}

Service
PageInfo<Book> getMoreBook(String type, String majorCate, String page);
ServiceImpl
public PageInfo<Book> getMoreBook(String type, String majorCate, String page){
try {
PageHelper.startPage(Integer.parseInt(page), 10);
List<Book> books = bookMapper.getMoreBook(type,majorCate);
PageInfo<Book> pageInfo = new PageInfo<Book>(books);
return pageInfo;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}

返回的数据格式

{
"content": {
"endRow": 100,
"firstPage": 6,
"hasNextPage": true,
"hasPreviousPage": true,
"isFirstPage": false,
"isLastPage": false,
"lastPage": 13,
"list": [{},{}],
"navigateFirstPage": 6,
"navigateLastPage": 13,
"navigatePages": 8,
"navigatepageNums": [6, 7, 8, 9, 10, 11, 12, 13],
"nextPage": 11,
"pageNum": 10,
"pageSize": 10,
"pages": 189,
"prePage": 9,
"size": 10,
"startRow": 91,
"total": 1884
},
"status": 1,
"msg": "ok"
}

上一篇:Ajax GET


下一篇:Android系统--输入系统(七)Reader_Dispatcher线程启动分析