jQuery에서 ajax 사용 시, json 처리 방법 (JAVA)
데이터가 배열인 경우..
-- JAVA
StringBuffer sb = new StringBuffer();
sb.append("[");
for(Iterator<VO> it = listVo.iterator(); it.hasNext();) {
VO vo = it.next();
sb.append("[");
sb.append("'"+vo.getCol1()+"',");
sb.append("'"+vo.getCol2()+"',");
sb.append("'"+vo.getCol3()+"',");
sb.append("'"+vo.getCol4()+"'");
sb.append("]");
if(i++ < size-1) sb.append(",");
}
sb.append("]");
response.setContentType("text/javascript");
response.getWriter().print(sb.toString());
response.getWriter().flush();
return null;
-- JAVASCRIPT
success : function(transport) {
var oJson = eval('(' + transport + ')');
}
데이터가 JSONObject일때
-- JAVA
JSONObject outter = new JSONObject();
outter.put("col1",value1);
outter.put("col2",value2);
outter.put("col3",value3);
outter.put("col4",value4);
response.setContentType("application/json; charset=UTF-8");
PrintWriter pw = response.getWriter();
pw.print(outter.toString());
pw.flush();
return null;
-- JAVASCRIPT
success : function(transport) {
var oJson = transport;
}
배열과 JSONObject의 차이는..
[[value1, value2, value3],
[value1, value2, value3],
[value1, value2, value3],
[value1, value2, value3]]
{"key1" : value1,
"key2" : value2,
"key3" : {"key3_1" : value3_1,
"key3_2" : value3_2}
}
요렇게 생겨먹은게 다름..