gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-04 12:18:13 27 4
gpt4 key购买 nike

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

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

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

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

并从存储库返回与列表中任何元素具有相同 x y z 的所有对象

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

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

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

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

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

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

最佳答案

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

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

这在 spring data jpa 中应该是可能的 -

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

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

关于java - 如何创建一个 Spring Data JPA 查询,该查询将从相同类型的对象列表中返回与 3 个参数匹配的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39141185/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com