对于JPA存储库查询,如何按名称和状态进行排序?

时间:2019-07-11 08:48:51

标签: java postgresql spring-data-jpa jpa-2.2

我正在开发 Spring Boot + Spring Data JPA + Postgres + Lombok 示例。在此示例中,我要获取所有学生的名字为ASC的订单,其状态为Active

我在下面的查询中进行了开发,效果很好,但是在status=Active查询中我没有看到在此处也使用JpaRepository的方法。

注意 :在我的情况下,status字段在Java中是Enum

有什么办法可以做到的吗?我知道我可以获取所有学生,然后使用流可以轻松过滤,但是使用JpaRepository查询,有什么办法吗?

List<Student> students = studentRepository.findAll(new Sort(Sort.Direction.ASC, "studentName"));

2 个答案:

答案 0 :(得分:1)

只需将以下方法签名放入存储库中,并在需要时使用参数“ Active”将其调用。

List<Student> findAllByStatusOrderByStudentNameAsc(String status);

答案 1 :(得分:1)

在扩展StudentRepository的{​​{1}}界面中,您可以添加如下方法签名:

Repository / JpaRepository