[英]Replace json value by jsonpath
我们有这样一个json字符串:
{
"key1": {
"key2": {
"key6": true
},
"key6": {
"key3": [
{
"key4": "1",
"key5": "1"
},
{
"key4": "1",
"key5": "1"
}
]
}
},
"from": 0
}
我们想使用下面的代码来替换后面的 key6 的值:
DocumentContext dContext = JsonPath.using(configuration).parse(objectString);
dContext.set("$.key6"+,"false"));
但是由于 key6 已在 jsonstring 中显示两次,因此我们替换了错误的值。 上面的json结构只是一个例子,“key6”的json路径在不同的json中有很大的不同。 我们无法为这种替换编写确切的 jsonpath。 我们怎样才能用java替换没有孩子的“key6”的值? 非常感谢。
您唯一的解决方案是使用精确的密钥,在您的情况下,如下所示:
dContext.set("$.key1.key2.key6"+,"false"));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.