废话不多说,上效果图:
最重要的哈,Show me the code
Controller代码主要是接收翻页参数,组织翻页数据,使用了Spring MVC和Spring Data提供的工具类。
代码如下:
@Controller
public class UserController {
private static final int DEFAULT_CURRENT = 1;
private static final int DEFAULT_PAGE_SIZE = 10;
@GetMapping(value = {"/user/list"})
public String pagination(@RequestParam Optional<Integer> page,
@RequestParam Optional<Integer> size,
Model model) {
// 请求参数处理
int currentPage = page.orElse(DEFAULT_CURRENT);
int pageSize = size.orElse(DEFAULT_PAGE_SIZE);
// 这里当前页码需要减去1,因为Pageable翻页从0开始
Pageable pageable = PageRequest.of(currentPage-DEFAULT_CURRENT, pageSize, Sort.by("id").descending());
// 返回数据,这里是样例,随便做了点数据
List<User> userList = new ArrayList<>();
for (int i = 10 * (currentPage-1); i < 10 * currentPage; i++) {
User user = new User();
user.setId(new Long(i));
user.setName("User " + i