【发布时间】:2012-08-01 09:32:48
【问题描述】:
我在寻找解决这个问题的好方法时遇到了一些问题:我从 RESTful API 获取 JSON 数据,我想根据某个字段的特定值对其进行过滤,处理过滤后的数据,然后发送给客户。
以这个 JSON 为例:
{
"element1": {
"width": 500,
"height": 500
},
"element2": {
"width": 300,
"height": 200
},
"element3": {
"width": 600,
"height": 100
}
}
如何仅过滤掉高度>=200 或宽度
PS:仅供参考,我会用java编写代码..
【问题讨论】:
-
除非 API 允许您指定条件,否则您无能为力。
-
我看不到迭代的任何替代方案。如果你能得到 XML 而不是 JSON,你可以使用 XPath,在这种事情上它可能会快得多。
-
JSon 不是处理这类事情最有效的格式。在将数据转换为 JSON 之前,您应该过滤数据。
-
我怀疑从 Web 服务中检索和解析数据需要很长时间。除非您可以将过滤推送到远程 API 中,否则不会有太大改进。
标签: java json performance rest filtering