如何在JPA SpringBoot中返回具有给定ID的所有类型的实例?

时间:2018-04-24 11:12:24

标签: spring-boot spring-data-jpa

我试图根据我提供的ID从数据库中返回(或获取)所有记录。我使用JPA并且我知道findAll()方法,但它返回所有记录而没有任何标准,我创建了一个自定义查询,它只返回表中的唯一值,但我想要根据标准返回所有记录。

例如,findAllByUserID(String UserID)方法应该返回基于UserID而不只是一个的所有记录。

我感谢任何帮助或建议。

由于

2 个答案:

答案 0 :(得分:3)

看看文档。在那里,您将找到可用于在存储库接口中声明方法的关键字,这些方法将生成相应的查询: https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods

在您的情况下:如果userID是您实体的属性,您可以添加方法

List<YourEntity> findByfindAllByUserID(String userId)

到您的存储库界面。

答案 1 :(得分:1)

首先,请确保您在选择查询中未使用任何汇总功能,例如DISTINCT()

然后确保实现该查询的方法返回了您所需结果的列表。

这里的外观如何:

@Query("select t from table t where t.code = ?1")
List<Result> findAllByUserID(String UserID);