일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- input
- 자바입력
- 카데인 알고리즘
- 자바 스레드 실행 순서 제어
- hash table
- R
- scanner
- 수학
- Easy
- 사칙연산
- heroku
- 자바 thread 실행 순서 제어
- array
- JAVA11
- SpringBoot 2
- Kadane's Algorithm
Archives
- Today
- Total
DeFacto-Standard IT
Object Serialization (JSON) (3) - net.sf.json 본문
SpringFramework/References
Object Serialization (JSON) (3) - net.sf.json
defacto standard 2018. 5. 3. 22:50JSONObject jObject = new JSONObject();
JSONArray jArray = new JSONArray();
JSON 포맷의 객체를 직접 조합할 수 있어 편리하다.
다만, 한 개의 객체만 있더라도 이 객체에 대한 키값이 존재해야 한다.
객체 내에 있는 필드에 대한 키값이 아닌, 객체 자체에 대한 키값을 의미한다.
길이가 길어진다면 점점 복잡해지는 경향이 있다.
한 객체의 정보만을 넘기는 것이 아니라, 여기에 부가적인 정보까지 포함하여 보내야 하는 경우에 사용했다.
부가적인 정보를 포함시키기 위해, 이를 위한 Class를 생성하는 것도 좀 아닌 것 같아서,
Response에 객체 정보 뿐만 아니라, 추가적인 정보를 첨가하는 클래스들을 만들고, 이 내에서는 net.sf.json 라이브러리의 객체를 사용하여 추가하는 경우에 사용했다.
JSON 객체의 구성이 바뀐다면 소스코드가 굉장히 복잡해지기 때문에, 간단하게 JSON Object를 만드는 경우에만 사용하도록 하자.
public class Main {
public static void main(String args[]) {
Person p = new Person();
p.setAge(10);
p.setGrade('A');
p.setName("ycp");
p.setSubName("YCPark");
JSONObject jObject = new JSONObject();
JSONArray jArray = new JSONArray();
jObject.put("p1",p); // 무조건 키값이 있어야 한다.
jObject.put("array", jArray); // 객체가 할당만 되고 내용이 없어도 들어간다
jArray.add(p); // 객체가 1개라도 리스트 방식으로 들어간다.
jArray.add(jObject); // jObject가 그대로 들어간다.
System.out.println(jObject);
System.out.println(jArray);
}
}
실행 결과는 다음과 같다.
'SpringFramework > References' 카테고리의 다른 글
Object Serialization (JSON) (2) - jackson-databind# ObjectMapper Class (0) | 2018.05.03 |
---|---|
Object DeSerialization (JSON) (1) - @RequestBody (0) | 2018.05.03 |
Object Serialization (JSON) (2) - jackson-databind# ObjectMapper Class (0) | 2018.05.03 |
Object Serialization (JSON) (1) - @RestController, @ResponseBody (0) | 2018.05.02 |
Spring DataBinding (3) - AJAX Request via JQuery (JSON) (2) | 2018.05.02 |
Comments