繁体   English   中英

如何创建Spring Data JPA查询,该查询将返回与相同类型的对象列表中的3个参数匹配的对象

[英]How to create a Spring Data JPA query that will return objects matching 3 parameters from a list of objects of the same type

我想创建一个从方法名称创建的查询 - 示例:

List<User> findByEmailAddressAndLastname(String emailAddress, String lastname);
List<User> findByAgeIn(Collection<Age> ages)

这基本上结合了上述两种方法。 我有一个具有15个参数的实体,但这里只有3个相关,我们称之为xy z。 我想创建一个基本上工作的查询

List<MyClass> FindByXAndYAndZIn(List<Myclass> list)

并返回repo中与列表中任何元素具有相同xyz的所有对象

  1. 甚至可以仅使用从方法名称创建的查询
  2. 如果是,应该怎么做?

!!编辑!!:刚刚意识到我写的帖子有误导性 - 我无法使用

List<MyClass> FindByXAndYAndZIn(String X String Y String Z List<Myclass> list)

因为XY和Z的特定值在列表的元素中。 我需要类似的东西

List<MyClass> FindByXAndYAndZIn(List<Myclass> list)

这将获得列表的第一个元素的xyz,并从存储库中获取具有相同xy z的对象。 然后对列表的下一个元素和下一个元素执行相同的操作并返回所有匹配的对象。

我的理解是你想要一个像 - 的查询

SELECT * FROM myclass_table WHERE X in (X, Y, Z);

这应该可以在春季数据jpa中实现 -

List<MyClass> FindByXIn(List<String> X);

假设X是一个String,尽管可以为更复杂的JPA对象更改查询

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM