java spring 存储库 - 使用一组 IDs/values 的 findBy() 方法

java spring repositories - findBy() method using set of IDs/values

我有一个 java spring 应用程序。它做后端工作,提供 Restful API,全部使用 Oracle 数据库。

对于大多数资源,它遵循典型的设计模式:"Controller > Service > Repository > DB"。

在存储库级别,当扩展JpaRepository接口时,可以定义一组方法而无需提供主体,就像这样:

public interface SurgeryRepository extends JpaRepository<Surgery, String> {

    public List<Surgery> findByPracticeNameContainingIgnoreCase(String substring); 

    public Surgery findById(String id); 

}

我想知道的是如何定义一个允许我使用 ID 列表检索多行的方法,例如:

public List<Surgery> findByIDs(List<String> IDs); 

应该自动映射到这种 SQL

SELECT * FROM SURGERIES WHERE SURGERY_ID IN ('101',102,103',104',105',106')

... 但无需在 java 代码中编写本机查询。 (不一定是 id,它可以是任何领域)提前致谢。

您可以使用:

findAll(Iterable<ID> ids) 

JpaRepository提供的方法