我有一些参数,这些参数可能为空,也可能不为空。
我想做的是只用非空参数执行查询。
举例来说,我有:
String param1;
String param2;
我希望做类似这样的事情:
If ( param1 != null && param2 != null ) {
Query q = em.createQuery("SELECT a FROM Advert where a.property = param1 and a.property2= param2);
}
if( param1 == null && param2 != null ) {
Query q = em.createQuery("SELECT a FROM Advert where a.property2= param2")
}
if( param1 != null && param2 == null ) {
Query q = em.createQuery("SELECT a FROM Advert where a.property= param1");
}
是否可以使用jpql查询字符串而不是if语句来实现此操作?(因为我有两个以上的参数,检查这么多情况并不方便)