你好,我的项目使用jqgrid,我需要实现分页,所以我在php中找到了一段代码并将其复制到java中:
@RequestMapping(value = "getgriddata", method = RequestMethod.GET)
public @ResponseBody
String getGrid(@RequestParam("page") String page, @RequestParam("rows") int rownumber, @RequestParam("sidx") String sortBy, @RequestParam("sord") String sortOrder,@RequestParam(value = "_search") String search, @RequestParam(value="filters", required = false) String filters) {
int totalCount = dao.getTotalRecordCount();
CustomJsonResponse response = new CustomJsonResponse();
int totalPages = 0;
if (totalCount > 0) {
totalPages = (int) Math.ceil(totalCount/rownumber);
}
if (Integer.valueOf(page) > totalPages) {
page = String.valueOf(totalPages);
}
Gson jsonConverter = new Gson();
int start = (rownumber * Integer.valueOf(page)) - rownumber;
Filters searchFilter = null;
if(Boolean.valueOf(search) == true){
searchFilter = jsonConverter.fromJson(filters, Filters.class);
}
// Retrieve records from database
List<Record> recorBatch = dao.getRecords(start, rownumber, sortBy, sortOrder, search, searchFilter);
// Assign the result from the service to this response
response.setRows(recorBatch);
response.setTotal(String.valueOf(totalPages));
response.setRecords(String.valueOf(stagingLoadBatch.size()));
response.setPage(page);
return jsonConverter.toJson(response);
}
当我处理整组数据时,这可以正常工作,但是当我缩小搜索范围(即在某个时间间隔内选择记录)时,分页就会崩溃。我意识到这是不好的做法,我从这段代码中复制了它用于分页:
有人可以为此提出更好的解决方案吗?
最佳答案
我建议你看看Display Tag Library
,用于分页。
关于java - Spring mvc 分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5990336/