Programming/java

[java] java JSON 데이터 파싱

성일만 2015. 1. 20. 09:53

java JSON 데이터 파싱



자바 코드안에서 해당 URL 접속 후 응답받은 JSON객체를 파싱하는 예제


JSON Simple maven dependency

<!-- JSON Simple -->

<dependency>

<groupId>com.googlecode.json-simple</groupId>

<artifactId>json-simple</artifactId>

<version>1.1.1</version>

</dependency>


Method

try{

// 위도, 경도

String location = lat + "," + lng;

// API

String weatherApi = "http://api.wunderground.com/api/" + apikey + "/conditions/lang:us/q/" + location + ".json";


// java.net.URL

URL url = new URL(weatherApi);

// Connection 객체를 InputStreamReader로 읽고 utf-8로 인코딩.

InputStreamReader isr = new InputStreamReader(url.openConnection().getInputStream(), "UTF-8");


// org.json.simple.JSONObject 객체로 형변환

JSONObject object = (JSONObject)JSONValue.parseWithException(isr);

// 해당 객체에 담긴 key 값으로 원하는 데이터를 가져온다.

JSONObject obj = (JSONObject) object.get("current_observation");

catch(Exception e) {

e.printStackTrace();

}