如何通过Sort和Pageable使用Spring数据JPA来查询数据?
我正在尝试在我的项目中使用Spring数据JPA 。 我想知道是否有一个开箱即用的API来查询数据, Sort和页面。 当然,我知道我可以自己写这个方法,我只是想知道是否有一个开箱即用的方法。 我的DAO扩展JpaRepository ,我发现有以下方法可以调用: 
 findAll(); findAll(Pageable pageable); findAll(Sort sort); 
 但是findAll(Sort sort, Pageable pageable)没有这个方法,所以我很好奇。 
有两种方法可以实现这一点:
 final PageRequest page1 = new PageRequest( 0, 20, Direction.ASC, "lastName", "salary" ); final PageRequest page2 = new PageRequest( 0, 20, new Sort( new Order(Direction.ASC, "lastName"), new Order(Direction.DESC, "salary") ) ); dao.findAll(page1); 
 正如你所看到的,第二种forms更灵活,因为它允许为每个属性( lastName ASC, salary DESC )定义不同的方向。 
Pageable还有一个选项来指定sorting。 从Java文档
 PageRequest(int page, int size, Sort.Direction direction, String... properties) 
创build一个应用了sorting参数的新的PageRequest。