Web/SpringBoot
[Java] StringBuilder로 JSON value를 만들 때 주의점
hjkongkong
2022. 9. 14. 21:44
JSONArray[JSONObject{id, value}, JSONObject{id, value} .. ]
StringBuilder으로 JSONObject의 value를 만들어 넣고, JSONArray로 묶어 보내는 API를 만들었더니 AJAX 통신에 실패했다.
jsonviewer로 확인했더니 해당 결과값이 JSON vaule가 아니라는 문구가 나왔다.
보내준 값을 확인하니
{
"id": 128,
"value": Jamse (male)
}
이런 형식
자세히 보면 value값이 "String"이 아니다.
JSONArray resultArray = new JSONArray();
JSONObject resultObj = new JSONObject();
StringBuilder value = new StringBuilder();
value.append(결과값);
resultObj.put("value", value.toString());
resultArray.add(resultObj);
return resultArray.toString();
이런 식으로 보내주면 value가 String으로 된다.
{
"id": 128,
"value": "Jamse (male)"
}