Java 具有多个条件和一个参数的Spring数据派生查询

Java 具有多个条件和一个参数的Spring数据派生查询,java,spring-data,Java,Spring Data,如何在Spring数据中创建派生查询方法,这些方法基于多个条件选择结果,但只使用一个参数 List<Entity> findById1OrId2OrId3(String id1OrId2OrId3); List findById1OrId2OrId3(字符串id1OrId2OrId3); 类似于此示例。我认为使用派生查询是不可能的 或者 @Query("from Entity e where e.id1 = ?1 or e.id2 = ?1 or e.id3 = ?1") Lis

如何在Spring数据中创建派生查询方法,这些方法基于多个条件选择结果,但只使用一个参数

List<Entity> findById1OrId2OrId3(String id1OrId2OrId3);
List findById1OrId2OrId3(字符串id1OrId2OrId3);

类似于此示例。

我认为使用派生查询是不可能的

或者

@Query("from Entity e where e.id1 = ?1 or e.id2 = ?1 or e.id3 = ?1")
List<Entity> findById1OrId2OrId3(String singleId);
@Query(“来自实体e,其中e.id1=?1或e.id2=?1或e.id3=?1”)
列表findById1OrId2OrId3(字符串singleId);

您可以使用“In”并创建ID列表,然后创建一个新的派生查询以实现此目的

它会引发错误:参数索引无效!您似乎声明的查询方法参数太少。请尝试使用
?1
而不是
?0