我需要使用多个OR构建BooleanBuilder条件。
我有一个带有2个输入参数的方法:
User findUser(String inputname, List<String> inputcities);
我有一个代码:
BooleanBuilder builder = new BooleanBuilder();
builder.and(user.name(inputname));
作为OR,我应该如何为许多城市动态构建它? 要检查用户是否来自数组中给出的那些城市之一? 因此数组可能包含5、10个城市。我如何不进行编码就可以做到?
答案 0 :(得分:0)
假设用户实体有一个外键,引用一个城市实体,建议您使用类似于以下内容的sql查询:
select u.*
from User u
where u.NAME = :inputname
and u.CITY_ID in :inputcities
最简单的实现方法是使用Spring Data的JPA存储库。 如果这样做,则不需要任何BooleanBuilder或其他自定义内容。
如果仍然不清楚,请随时提问。