Pageable 分页形象接口
办法 1:在申请办法参数中间接封装好 Pageable pageable(附带分页查问条件) 给 service 调 dao 查问用
@GetMapping("/types")
public String types(@PageableDefault(size = 6, sort = {"updateTime"}, direction = Sort.Direction.DESC) Pageable pageable,
@RequestParam Long id,
Model model){}
翻页申请间接附带 page 参数 (页码索引,从 0 开始) 即可
该申请返回的后果
number 和 size 是页码和每页条数,是前端发动申请传过来(或者后端自定义默认值),后端再传回来给咱们的
办法 2:前端在申请时传分页条件 (pagenum,pagesize, 查问条件如 id 等) 给后端封装 pageble
// 依据分类 id 查问文章
@GetMapping("/types")
public String types(@PageableDefault(size = 6, sort = {"updateTime"}, direction = Sort.Direction.DESC) Pageable pageable,
@RequestParam Long id,
Model model){List<Type> types = typeService.listTypeTop(100);
/* 如果 id==- 1 阐明是首页跳过来的,给分类 Top1 的 id*/
if(id==-1){id = types.get(0).getId();}
BlogQuery blogQuery = new BlogQuery();
blogQuery.setTypeId(id);
model.addAttribute("types",types);
model.addAttribute("page",blogService.listBlog(pageable,blogQuery));
model.addAttribute("activeTypeId",id);
return "types";
}