我正在使用 Spring Boot、Spring Data 编写一个应用程序。我正在尝试实现基于不同过滤器参数的过滤功能。使用 Spring Data 查询我们可以定义相当复杂的逻辑,例如:@Query("SELECT u FROM User u WHERE u.status = 1")Collection<User> findAllActiveUsers();但是,如果在我们发出可能相当复杂的实际过滤请求之前,where 子句的数量、顺序、限制、不同参数的数量都是未知的,该怎么办?现在,过滤器参数以 json 对象的形式发送,我解析并检索它们,结果 sql 查询可能如下所示:SELECT * FROM tableWHERE field1 != `value1` and (field1 != ` value2 `OR (field1 = `value3` AND filed2 < 3))AND field2 != 99是否可以生成具有未定义(直到实际过滤器请求,在运行时)数量的参数、where 子句和其他内容的动态复杂查询?
添加回答
举报
0/150
提交
取消