溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springboot中使用JSONObject如何實現(xiàn)遍歷并替換json值

發(fā)布時間:2020-11-16 15:04:26 來源:億速云 閱讀:1159 作者:Leah 欄目:開發(fā)技術

這篇文章給大家介紹springboot中使用JSONObject如何實現(xiàn)遍歷并替換json值,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

使用場景

如何修改JSONObject 的值,如何替換json中的部分內容,比如檢查報告我們再數(shù)據(jù)庫存的是json格式的字符串varchar,然后前端傳來確認更新報告的json,后臺接口需要將前端傳來的json里面的內容更新到后臺數(shù)據(jù)庫(當然,前端傳來的不一定是完整的字符串,可能是一個,兩個,總之只是部分不是全部)。這個時候就需要使用這個方案了。

代碼展示

 @PutMapping("/result/{checkNum}")
 public ApiReturnObject update(@PathVariable String checkNum,String dataStr) {
 //從數(shù)據(jù)庫查出duix
 Result result= resultReposity.findByCheckNum(checkNum);
 //接收的參數(shù)
 JSONObject jsonObj=JSON.parseObject(dataStr);
 JSONObject originObj=JSON.parseObject(result.getCheckresult());
 //單個替換
 //originObj.put("AGE", jsonObj.get("AGE"));
 //遍歷替換json里面的值
 for (String key:jsonObj.keySet()) {
  originObj.put(key, jsonObj.get(key));
 }
 //轉化為jsonString
 result.setCheckresult(originObj.toJSONString());
 //更新狀態(tài)
 result.setStatus("1");
 //保存
 resultReposity.save(result);
 }

JSON操作講解

put可以強制更新json里面的值

JSONObject json = JSON.parseObject("{val: 123}");
System.out.println("======before=====");
System.out.println("size: " + json.size());
System.out.println("val: " + json.get("val"));
//直接put相同的key
json.put("val", 234);
System.out.println("======after======");
System.out.println("size: " + json.size());
System.out.println("val: " + json.get("val"));

結果

======before=====
size: 1
val:  123
======after======
size: 1
val:  234

JSONObject.keySet()可以遍歷json所有的key值

for (String key:jsonObj.keySet()) {
 originObj.put(key, jsonObj.get(key));
}

關于springboot中使用JSONObject如何實現(xiàn)遍歷并替換json值就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI