data.getShoppingKr.item[0].MAIN_TITLE

data로 받아왔고, getShoppingKr이라는 키값에
item이라는 키는 배열이라서[0]의 키를 다시 부르면 벨류가 나옴..
@Controller
public class MyController {
@RequestMapping("/")
public @ResponseBody String root() {
return "공공데이터활용연습";
}
@RequestMapping("/index")
public void index() {
}
@RequestMapping("/api")
@ResponseBody
public StringBuilder api() throws IOException {
StringBuilder urlBuilder = new StringBuilder("http://apis.data.go.kr/6260000/ShoppingService/getShoppingKr"); /*URL*/
urlBuilder.append("?" + URLEncoder.encode("serviceKey","UTF-8") + "=a3ItCVcTlApfvmgijShSPU8kIHKtnPv6Jqw5g5%2Fo%2FUVaZ2y90%2BBbQqY3VCDQilC0DC5o1S57%2FX3wX7aGdQ%2F4nQ%3D%3D"); /*Service Key*/
urlBuilder.append("&" + URLEncoder.encode("pageNo","UTF-8") + "=" + URLEncoder.encode("1", "UTF-8")); /*페이지번호*/
urlBuilder.append("&" + URLEncoder.encode("numOfRows","UTF-8") + "=" + URLEncoder.encode("10", "UTF-8")); /*한 페이지 결과 수*/
urlBuilder.append("&" + URLEncoder.encode("resultType","UTF-8") + "=" + URLEncoder.encode("json", "UTF-8")); /*JSON방식으로 호출 시 파라미터 resultType=json 입력*/
urlBuilder.append("&" + URLEncoder.encode("UC_SEQ","UTF-8") + "=" + URLEncoder.encode("292", "UTF-8")); /*콘텐츠 ID*/
URL url = new URL(urlBuilder.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-type", "application/json");
System.out.println("Response code: " + conn.getResponseCode());
BufferedReader rd;
if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
} else {
rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
}
StringBuilder sb = new StringBuilder();
String line;
while ((line = rd.readLine()) != null) {
sb.append(line);
}
rd.close();
conn.disconnect();
System.out.println(sb.toString());
return sb;
}
}
String으로 toString 해서 보내도 됨.
dataType:"json"을 text로 받으려면
var result = JSON.parse(data);하면 됨.
<script>
$(function(){
$.ajax({
url:"api",
type:"get",
dataType:"json",
success:function(data){
var str = "<tr>";
str +="<td>"+data.getShoppingKr.item[0].MAIN_TITLE+"</td>";
str +="<td>"+data.getShoppingKr.item[0].PLACE+"</td>";
str +="<td>"+data.getShoppingKr.item[0].ADDR1+"</td>";
str +="<td>"+data.getShoppingKr.item[0].USAGE_DAY_WEEK_AND_TIME+"</td>";
str +="<td>"+data.getShoppingKr.item[0].ITEMCNTNTS+"</td>";
str += "/<tr>";
$("#table").append(str);
}
});
});
</script>
</head>
<body>
<table border="1" id="table">
<tr>
<td>MAIN_TITLE</td><td>PLACE</td><td>ADDR1</td><td>USAGE_DAY_WEEK_AND_TIME</td><td>ITEMCNTNTS</td>
</tr>
</table>
