Java 如何用查询绑定规范

Java 如何用查询绑定规范,java,spring-boot,jpa,Java,Spring Boot,Jpa,我试图用规范注释一个自定义查询。 我有大约9个具有相同规范的API,我不想创建9个带注释的查询。这里的问题是每个API都根据不同的列进行过滤,但所有API都有相同的规范 如果不使用“查找所有”方法,这是否可行? 这是我试过的 public interface DoctorSpecialityRepository extends JpaRepository<DoctorSpecialityEntity, Integer>, JpaSpecificationExecutor<Doc

我试图用规范注释一个自定义查询。 我有大约9个具有相同规范的API,我不想创建9个带注释的查询。这里的问题是每个API都根据不同的列进行过滤,但所有API都有相同的规范

如果不使用“查找所有”方法,这是否可行? 这是我试过的

public interface DoctorSpecialityRepository extends JpaRepository<DoctorSpecialityEntity, Integer>, JpaSpecificationExecutor<DoctorSpecialitySpecification> {

     ArrayList<DoctorSpecialityEntity> getDoctorsWithFilter(@Param("subSpecialities") ArrayList<SpecialitiesCountriesEntity> subSpecialities, DoctorSpecialitySpecification specification);

您不需要在jpaRepository中声明方法,您可以直接在specification类中编写自定义查询。您可以在实体上构建一组可扩展的谓词,然后可以将这些谓词与jpaRepository组合使用,而无需声明查询(方法)对于每个需要的组合。

请查看文档:请添加一些示例和参考。这不是一个有用的答案
Using named parameters for method public abstract java.util.ArrayList com.plus.doctors.repositories.DoctorSpecialityRepository.getDoctorsWithFilter