我想知道Sort.Order.by(String name)
在Spring Data JPA中是如何工作的。
假设我们要使用BookRepository extending JpaRepository<Book, Long>
查找所有图书并按书名对其进行排序
我将为bookRepostitory.findAll(pageable)
创建PageRequest
,如下所示:bookRepository.findAll(PageRequest.of(0,10,Sort.by("title");
但我也看到了这个解决方案,我不知道它是如何工作的。bookRepository.findAll(PageRequest.of(0,10, Sort.by(Sort.Order.by("title"));
您能告诉我第二种解决方案的优点是什么,以及它是如何工作的吗?
谢谢你
1条答案
按热度按时间au9on6nz1#
Sort.by
被重载以接受String
、Direction
和Order
对象的各种组合。Order
是在内部使用的,它只是将String
(作为排序依据的属性的名称)和Direction
(即,是升序还是降序)组合在一起。使用
Order
对象是最灵活的,因为它允许按不同方向的多个属性进行排序。另一个重载了一个较短的,但不提供或提供较少的对排序方向的控制。It is all in the source code,即直接向前。