[英]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.