Java Spring引导:使用JPQL的查询定义

Java Spring引导:使用JPQL的查询定义,java,spring-boot,hibernate,spring-data-jpa,Java,Spring Boot,Hibernate,Spring Data Jpa,我不熟悉春季开机和冬眠。这里我尝试运行一个基于搜索的参数查询,我想按性别进行搜索。若我将此字段保持为空,那个么查询应该列出所有项。但问题是我的方法返回所有数据时忽略了我的搜索参数。我的服务类看起来像: public interface HouseholdService { @Query(value = "select * from household where sex = 1", nativeQuery = true) List<Women>

我不熟悉春季开机和冬眠。这里我尝试运行一个基于搜索的参数查询,我想按性别进行搜索。若我将此字段保持为空,那个么查询应该列出所有项。但问题是我的方法返回所有数据时忽略了我的搜索参数。我的服务类看起来像:

public interface HouseholdService {

    @Query(value = "select * from household where sex = 1", nativeQuery = true)
    List<Women> getEligibleWomen();

}
公共接口HouseholdService{
@查询(value=“select*from house where sex=1”,nativeQuery=true)
列出getEligibleWomen();
}
我的Impl看起来像

@Service
public class HouseholdImpl implements HouseholdService {

    @Autowired
    private HouseholdRepository householdRepository;

    @Override
    public List<Women> getEligibleWomen() {
        return householdRepository.findBy();
    }
public interface HouseholdRepository extends CrudRepository<Women, String>
{
  
     List<Women> findBy();
}
@服务
公共类HouseholdImpl实现HouseholdService{
@自动连线
私人住宅储存库住宅储存库;
@凌驾
公共列表getEligibleWomen(){
return householdRepository.findBy();
}
我的存储库界面看起来像

@Service
public class HouseholdImpl implements HouseholdService {

    @Autowired
    private HouseholdRepository householdRepository;

    @Override
    public List<Women> getEligibleWomen() {
        return householdRepository.findBy();
    }
public interface HouseholdRepository extends CrudRepository<Women, String>
{
  
     List<Women> findBy();
}
公共界面HouseholdRepository扩展了Crudepository
{
List findBy();
}

在这方面,有人能帮我吗?请?

显然,在Spring数据不处理的界面上执行
@Query
是行不通的。该方法应该在
HouseholdRepository
上,而不是服务上,或者至少
@Query
应该是。Daaaamn,愚蠢的我,谢谢,它起作用了