如何在Spring JPQL中忽略空参数?

问题描述 投票:2回答:1

我有一个这样创建的API。当您提供两个参数时它都可以工作,但是我希望当任何一个参数为null时它都能工作。有办法吗?

@Query("Select u from User u where u.agency = :agency and " +
            "(u.firstName like %:firstName%)")
    public List<User> multiParam(Agency agency, String firstName);
java spring spring-boot jpa jpql
1个回答
1
投票

尝试此

@Query("Select u from User u where (:agency is null or u.agency = :agency) and " +
        "(:firstName is null or u.firstName like %:firstName%)")
public List<User> multiParam(Agency agency, String firstName);

更多参考,请检查link

© www.soinside.com 2019 - 2024. All rights reserved.