Java 后查询的动态筛选准则
我需要一个使用post查询west Web服务的动态筛选条件 给你举个例子Java 后查询的动态筛选准则,java,json,data-structures,dynamic,enumeration,Java,Json,Data Structures,Dynamic,Enumeration,我需要一个使用post查询west Web服务的动态筛选条件 给你举个例子 { "fields": [ "field":"firstName", "field":"lastName" ] , "filters": [ filter{"field":"firstName", "operation":"EQ",
{
"fields": [
"field":"firstName",
"field":"lastName"
]
,
"filters":
[
filter{"field":"firstName",
"operation":"EQ",
"value":"FIRSTNAME"
},
filter{"field":"LastName",
"operation":"LIKE",
"value":["FIRSTNAME"]
},
filter{"field":"address",
"operation":"IN",
"value":["1","2","3","4"]
},
]
}
请注意操作“EQ”,它只有一个字符串,对于其余的过滤器,您需要一个列表
基于操作,我希望值可以是列表或单个字符串,如何在java中动态构建它,可能吗。是的,可能,但永远不要这样做() 相反,以一种清晰的方式设计输入,这样用户就知道可以选择将多个值放在那里。可以命名一个字段
值
或值列表
不要创建自定义适配器、工厂注册表或自定义反序列化程序,只需重新设计即可。另外,也不要朝相反的方向走——这将是接受一个列表,即使使用
EQ
参数,您只需要一个元素,只是为了简化模型。编写代码比较容易,但最终用户会感到困惑。我自己的解决方案有一个抽象类作为过滤器,然后为list和not list分别添加了两个过滤器类,工作非常出色。单字符串“这是什么意思?请注意操作“EQ”,它只有一个字符串,对于其余的过滤器,您需要一个列表