响应请求分页数据getDataTbale(list)
时间: 2023-12-08 20:03:18 浏览: 60
在 Web 开发中,我们通常需要将查询结果进行分页展示。一种常见的方式是使用 DataTables 插件,它可以实现数据的分页、排序、搜索等功能。在使用 DataTables 时,我们需要在后端将查询结果进行封装,然后将数据以 JSON 格式返回给前端。下面是一个实现响应请求分页数据的示例代码:
```java
@RequestMapping("/list")
@ResponseBody
public Map<String, Object> getUserList(@RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
@RequestParam(value = "pageSize", defaultValue = "10") int pageSize) {
// 使用 PageHelper 进行分页设置
PageHelper.startPage(pageNum, pageSize);
// 查询用户列表
List<User> userList = userService.getUserList();
// 封装 DataTables 所需的数据格式
Map<String, Object> dataTable = new HashMap<>();
dataTable.put("draw", 1); // DataTables 请求服务器端返回的标识,需要与请求参数中的 draw 相同
dataTable.put("recordsTotal", ((Page) userList).getTotal()); // 数据库中总记录数
dataTable.put("recordsFiltered", ((Page) userList).getTotal()); // 符合条件的记录数,与 recordsTotal 相同
dataTable.put("data", userList); // 数据列表
return dataTable;
}
```
在上面的代码中,我们首先使用 PageHelper.startPage() 方法设置了分页参数,然后调用 userService.getUserList() 方法获取用户列表数据。接下来,我们将查询结果封装成 DataTables 所需的格式,并以 JSON 格式返回给前端。
需要注意的是,封装好的数据格式需要包含以下字段:
- draw:DataTables 请求服务器端返回的标识,需要与请求参数中的 draw 相同;
- recordsTotal:数据库中总记录数;
- recordsFiltered:符合条件的记录数,与 recordsTotal 相同;
- data:数据列表。
通过以上步骤,我们就可以在后端将查询结果进行分页封装,并将数据以 JSON 格式返回给前端,实现响应请求分页数据的功能。
阅读全文