我的资源结构如下:

"activity": {
            "activity_type": "Like",
            "activity_id": "123456",
            "object_id": "",
            "product_id":"",
            "reference_activity": {
                    "activity_type": "Rating",
                    "activity_id": "789456",
                    "object_id": "rating/5",
                    "product_id": "product.v1.13445123",
                    "timestamp": 1433447044000
            },
            "timestamp": 1435790640115
}


问题在于资源可以包含相同类的对象(即引用另一个“活动”)。结果,它们具有相似的值名称。我正在尝试使用Jackson的JsonNode.findValue()方法解析此JSON结构,但是findValue()方法也进行嵌套搜索。因此,如果我执行findValue(“ object_id”),它将永远不会返回空字符串。相反,它将始终返回“ rating / 5”。


有没有一种方法可以将findValue()方法限制为立即数
孩子们?
或者,是否有一种方法可以从中删除reference_activity对象
父结构(但仍保留JsonNode对象),以便我可以分别解析它们?

最佳答案

如果不需要递归查找,只需使用pathget方法?

10-04 11:54