1. 程式人生 > >SpringBoot進階之JPA實現分頁、排序

SpringBoot進階之JPA實現分頁、排序

---------------repository類程式碼------------

public interface GirlRepository extends JpaRepository<Girl,Integer> {
    //分頁、排序
    Page<Girl> findByName(String name,Pageable pageable);

}

--------------------Controller程式碼----------------------------
  @PostMapping(value = "/getid")
    @ResponseBody
    public Msg getId(@RequestParam(value = "name", defaultValue = "ASD") String name,
                    @RequestParam(value = "page", defaultValue = "0") Integer page,      //從第0個開始查
                    @RequestParam(value = "size", defaultValue = "15") Integer size,    //每頁展示幾個
                     @RequestParam(value = "sorts", defaultValue = "id") String sorts){   //排序的欄位
        Sort sort = new Sort(Sort.Direction.DESC, sorts);    //排序
        Pageable pageable =new PageRequest(page,size,sort);
        Page<Girl> pages =girlRepository.findByName(name, pageable);
        Iterator<Girl> it=pages.iterator();
        while (it.hasNext()){
           logger.info("---------------------->id:" + ((Girl) it.next()).getId());
        }
        return ResultUtil.success(it);
   }