AVA-2つ以上のJSOnObject(merge)をマージ


プロジェクトの進行中、APIを介してJSOnObjectを受信し、作成したJSOnObjectをマージして返す必要がある場合があります.
@RequestMapping(value = "/jsonMerge")
public JSONObject jsonMerge(HttpServletRequest request, ModelMap model) throws Exception {
	
	//시즌별 티어 - jsonArray
	JSONArray jsonArrST = new JSONArray();
	String[] season = {"2018", "2019", "2020", "2021"};
	String[] tier = {"Bronze", "Silver", "Gold", "Platinum"};
	for(int i=0; i<4; i++){
		JSONObject jsonST = new JSONObject();
		jsonST.put("season", season[i]);
		jsonST.put("tier", tier[i]);

		jsonArrST.add(jsonST);
	}
	
	//merge할 jsonObject1
	JSONObject jsonPart1 = new JSONObject();
	jsonPart1.put("name", "GARY");
	jsonPart1.put("age", "25");
	jsonPart1.put("seasonTier", jsonArrST);
	jsonPart1.put("nickName", "초코잠보");

	//merge할 jsonObject2
	JSONObject jsonPart2 = new JSONObject();
	jsonPart2.put("status", 200);
	jsonPart2.put("message", "SUCCESS");

	//최종으로 보낼 jsonObject
	JSONObject jsonRes = new JSONObject();
	JSONObject[] objs = new JSONObject[] { jsonPart1, jsonPart2 };
	for (JSONObject obj : objs) {
		Iterator it = obj.keySet().iterator();
		while (it.hasNext()) {
			String key = (String)it.next();
			jsonRes.put(key, obj.get(key));
		}
	}

	return jsonRes;

}
運行してみると、jsonPart 1とjsonPart 2がよく結合しています!