Spring数据按列表元素查找

时间:2018-03-23 19:50:31

标签: kotlin spring-data repository spring-data-jpa

我想问一下是否有可能在repo中编写Spring JPA方法,避免使用SQL和@Query。此方法必须返回列表,其中连接列表值等于某事。

这是课程:

class Temp1{
 val a: String,
}

这是包含上述类的类:

class Temp{
val aSet: Set<Temp1>
}

所以我希望在repo中有一个方法可以返回每个设置&#34; a&#34; value等于string。

我现在有了:findByaSetIn(aSet: List<Temp>)但它需要Temp值的列表而不是更精确的&#34; a&#34;值。

在sql中它的类似于:

SELECT * FROM Temp t JOIN Temp1 t1 ON t1.tempID = t.id WHERE t1.a = "abc"

1 个答案:

答案 0 :(得分:0)

您要寻找的是Containing

在您的示例中,它应该是这样的:

findByASetContaining(item :Temp1)

该方法将返回所有“临时”实体的集合,其中“ aSet”包含实体“ item”。

您不仅可以将Containing用于列表和集合的搜索,还可以用于字符串值的搜索。