Pageable分页抽象接口

image-20210827163332497

image-20210827163409200

方法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){
     
 }

image-20210827164049913

翻页请求直接附带page参数(页码索引,从0开始)即可

image-20210827164428800

该请求返回的结果

number和size是页码和每页条数,是前端发起请求传过来(或者后端自定义默认值),后端再传回来给我们的

image-20210827164948028

方法2:前端在请求时传分页条件(pagenum,pagesize,查询条件如id等)给后端封装pageble

image-20210827172026117

//根据分类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";
    }

image-20210827172142631


定春
1 声望0 粉丝