데이터를 주고 받을 때 json형식을 많이 사용하는 JsonObject, JsonArray 사용법을 알아보겠습니다.
1. JsonObject
JsonObject는 객체(주로 String)을 Json객체로 바꿔주거나 Json객체를 새로 만드는 역할을 합니다.
ex)
JsonObject jsonVar = new JsonObject() //json객체 생성 //json 객체에 key가 'key1'이고 value가 'value1'인 요소 추가 //{ "key1" : "value1" } jsonVar.put("key1","value1"); //키값이 'key1'인 요소 추출하기 jsonVar.get('key1') /return 'value1' Stirng을 json형태로 변환하기 String str = "{\"key1\",:\"value1\"}"; //str을 json객체로 변환 JsonObject jsonVar2 = new JsonObject(str); //json객체로 변환되서 jsonVar2로 정의됨
2. JsonArray
json들이 들어있는 Array(json 이외의 다른 데이터도 들어갈 수 있음)
//json 두개 생성 후 JsonArray에 넣기 JsonObject json1 = new JsonObject(); json1.put("첫번째": 1); JsonObject json2 = new JsonObject(); json1.put("두번째": 2); //JsonArray 생성 JsonArray jArray = new JsonArray(); //JsonArray에 json추가(put) jArray.put(json1); jArray.put(json2); //결과 jArray = [ { "첫번째 : 1}, { "두번째 : 2} ] //JsonArray에서 요소 추출하기(배열처럼 인덱스 사용) jArray.get(0); // {"첫번째" : 1}
+
json 파싱(parsing)하기
3. JsonParser 사용
다음과 같은 데이터가 있을 경우(json안에 json)
jObject = { "json1" : "test1", "json2" : { "json2-1" : "test2-1", "json2-2" : "test2-2" } }
JsonParser를 사용하여 다음과 같이 파싱할 수 있다.
JsonParser jParser = new JsonParser(); JsonObejct jObject1 = (JsonObejct)jParser.parse(jObject) //json 전체 파싱 //jObejct1는 json 전체가 파싱됨 jObject1.get("json1") //return "test1" //json안에 객체를 파싱하고 싶을때(key 'json2'의 value는 json객체) JsonObejct jObject2 = (JsonObejct)jParser.parse("json2") //key값으로 파싱 //jObject2는 { "json2-1" : "test2-1", "json2-2" : "test2-2" }이 파싱됨 jObject2.get("json2-1") //return "test2-1"
728x90
반응형
'Back-end > JAVA & Spring' 카테고리의 다른 글
[Java] java.io.FileOutputStream 주요 메소드 (0) | 2021.05.11 |
---|---|
[Java] java.io.File 주요 메소드 (0) | 2021.05.11 |
[Java] JSONObject 사용하기 (0) | 2021.05.11 |
[Java] 자바 instanceof 사용방법 (0) | 2021.05.11 |
[Spring] @value(value annotation) 사용 방법 (1) | 2021.05.10 |
댓글