반응형
JSONObject - {키:값, 키:값, 키:값, 키:값}
JSONArray – [JSONObject, JSONObject, …]
[{키:값, 키:값, 키:값, 키:값}, {키:값, 키:값, 키:값, 키:값}, ..]
형태로 구성된다.
JSONArray는 자바의 ArrayList컬렉션과 비슷하고
JSONObject는 자바의 HashMap컬렉션과 비슷하다.
JSONArray는 get(인덱스순번)으로 가져오고
JSONObject는 get(키)로 가져온다.
JSON을 다루는 라이브러리가 많고, 그 라이브러리마다 사용법이 다르다. 리스트 속의 아이템을 어떻게 끄집어내는지와 리스트에 아이템을 어떻게 집어넣는지에 집중해서 확인해 보면 된다.
package javaStudy;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class JSONExam {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
System.out.println("------------------------------------------------------");
System.out.println("JSON String 생성");
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "유혁");
// "name":"유혁"
JSONArray jsonArray = new JSONArray();
JSONObject school = new JSONObject();
school.put("subject1", "math");
school.put("subject2", "korean");
jsonArray.add(school);
// "school":[{"subject1":"math","subject2":"korean"}]
jsonObject.put("school", jsonArray);
System.out.println(jsonObject.toString());
System.out.println("----------------------------------------------------");
System.out.println("JSON String 파싱");
try{
JSONArray returnSchool = (JSONArray)jsonObject.get("school");
for(int i=0;i<returnSchool.size();i++){
JSONObject returnSubject = (JSONObject) returnSchool.get(i);
System.out.println("subject : "+returnSubject.get("subject1"));
System.out.println("subject : "+returnSubject.get("subject2"));
}
String name = (String)jsonObject.get("name");
System.out.println("name : " + name );
}catch(Exception e){
e.printStackTrace();
}
System.out.println("----------------------------------------------------");
}
}
반응형
'JAVA' 카테고리의 다른 글
자바 hashmap (0) | 2023.01.24 |
---|---|
자바 파일입출력 (0) | 2023.01.24 |
자바 쓰레드 (0) | 2023.01.24 |
URLConnection객체 : 웹페이지 가져오기 (0) | 2023.01.24 |
자바 JDBC (0) | 2023.01.24 |
댓글