【发布时间】:2018-07-18 15:43:29
【问题描述】:
是否可以为CrudRepository 方法添加默认排序?喜欢:
interface PersonRepository extends CrudRepository<Person, Long> {
@SortDefault(sort = "lastname", direction = Sort.Direction.ASC) //this is invalid
List<Person> findAllByAge(int age);
}
@Entity
public class Person {
@Id long id;
String firstname, lastname;
int age;
}
与findAllByAge(int age, Sort sort); 相比,优点是不必为每个调用类提供Sort。
(旁注:我知道我可以将类重命名为 findAllByAgeSortLastnameAsc(),但我明确询问 @SortDefault 注释或类似的)。
【问题讨论】:
-
你是否在 Hibernate 中使用 Spring 数据?
-
是的,我正在使用
spring-boot提供的完整堆栈,包括休眠映射。 -
@membersound,
@SortDefault没有应用于方法,或者我错过了什么? -
好吧,把它扔在那里:如果你只是根据需要传递你的排序,你总是可以只实现该接口来拥有该存储库的自定义实现,但调用它的方法将没有 @ 987654328@ 位。我知道,也许不是我们想要的
-
@AndrewTobilko 当然不是,这就是为什么我在后面的评论中写了“这是无效的”;)
标签: java spring hibernate spring-data