JSON 과 stringify() 를 공부하며

김하밍·2023년 5월 11일
0

Java

목록 보기
9/46

JSON 이란 ?

JavaScript Object Notation 의 약자로, JS 에서 데이터를 전달하기 위해 만들어졌다.

JSON 파일은 아래와 같은 key-value 형태로 데이터를 갖고 있다.

{
   "pageInfo": {
         "pageName": "abc",
         "pagePic": "http://example.com/content.jpg"
    },
    "posts": [
         {
              "post_id": "123456789012_123456789012",
              "message": "Sounds cool. Can't wait to see it!",
              "likesCount": "2",
         }
    ]
}

[JSON 의 특성]

(1) JSON 라이브러리 의존성 (org.json)
(2) JSONObject (key-value 쌍으로 데이터를 표현하는 객체)

  • JSONObject 에 데이터를 입력할 때는 put(key, value) 으로 입력한다.
  • toString()은 JSONObject가 갖고 있는 데이터를 JSON 형식으로 출력한다.
JSONObject jo = new JSONObject();
jo.put("name", "Jone");
jo.put("city", "Seoul");

System.out.println(jo.toString());
-----------------------------------
Output :
{"city":"Seoul","name":"Jone"}		// 순서는 랜덤으로 출력된다.

(3) HashMap으로 JSONObject 생성 (코드 구현하는 법 알기)

  • HashMap에 저장된 데이터를 JSON으로 변환할 수 있으며, HashMap 객체를 JSONObject 생성자의 인자로 전달하면 된다. (코드 구현하는 법 알기)

(4) JSON 문자열로 JSONObject 생성 (코드 구현하는 법 알기)

  • JSON 문자열로 JSONObject 객체를 생성할 수 있으며, 이렇게 생성된 JSONObject에 데이터를 추가할 수도 있다.

(5) POJO로 JSONObject 생성 (코드 구현하는 법 찾아만 보기)

  • POJO(Plain Old Java Object)는 단순히 get, set 메소드들만 있는 자바 클래스를 의미한다.
  • JSONObject는 POJO 객체를 인자로 받으며, 여기서 key와 value를 추출하여 JSON 데이터로 추가한다.

(6) JSONArray (코드 구현 찾아보기)

  • JSON의 value는 Array 타입이 될 수 있다.
  • JSONArray에 put(value)로 0개 이상의 데이터를 배열에 추가할 수 있다.
  • JSONArray는 JSONObject의 value가 되도록 다시 추가할 수 있다.

(7) List로 JSONArray 객체 생성 (코드 구현 찾아보기 : JSONArray 와 결과 같은지 확인하기)

  • JSONArray 생성자는 인자로 List를 받고, List의 모든 데이터를 JSONArray에 추가한다.

(8) JSON을 파일로 저장 (코드 구현 찾아보기 : 깃헙 stringify 과제에 나왔음)

  • Java의 JSON 객체들이 갖고 있는 데이터를 JSON 형식의 문자열로 변환하고 파일로 저장할 수 있다.

References

stringify() 메서드란 ?

JavaScript에서 JSON 문자열을 생성하는 메서드이다.
이 메서드를 사용하면, 객체 또는 배열을 JSON 문자열로 변환할 수 있다.

profile
나만의 언어로 기록하며 성장하기 !

0개의 댓글