ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSON
    과거/Documented 2021. 3. 22. 16:19

    1. 개요

     1) JavaScript Object Notation

     2) 데이터 저장 및 교환, 전송 시 많이 사용되는 경량의 데이터 형식으로 데이터를 표시하는 하나의 방식

     3) 특정 언어에 종속되지 않고 대부분의 언어에서 JSON 포맷의 데이터를 핸들링할 수 있는 라이브러리가 존재

     4) XML과 달리 태그가 없고 중괄호 내에 "key":"value" 형식으로 구성

     

    2. JavaScript Object

    // json 데이터 예시
    var jsonText = '{ "age" : "153", "height" : "172", "weight" : "67", "name" : "john doe" }';
    
    var jsonObject = JSON.parse(jsonText);        // json text -> javascript object
    var newJsonText  JSON.stringify(jsonObject);  // javascript object -> json text

     

    3. ObjectMapper class

     1) JSON 콘텐츠를 java object로 변경하하는 parsing 또는 deserialize에 사용

     

     2) writeValue API를 이용하면 java object를 JSON 콘텐츠로 serialize하는 것 가능

    ObjectMapper om = new ObjectMapper();
    Smartphone sp = new Smartphone("samsung", "galaxys21ultra");
    om.writeValue(new File("생성할 json경로 및 json파일"), sp);

      (1) writeValueAsString: java object로부터 JSON을 만들고 문자열로 반환

      (2) writeValueAsBytes: java object로부터 JSON을 만들고 Byte 배열로 반환

    ObjectMapper om = new ObjectMapper();
    Smartphone sp = new Smartphone("apple", "iphone12Pro");
    String result = om.writeValueAsString(sp);
    System.out.println("result:: "+result);  // {"manufacture":"apple", "product":"iphone12Pro"}

     

     3) readValue API를 이용하면 JSON 문자열을 java object로 변환하는 것 가능

    ObjectMapper om = new ObjectMapper();
    Smartphone sp = om.readValue(new URL("읽어올 json url 정보 및 경로"), Smartphone.class);

     

     ※ serialize, deserialize

      (1) serialize: 객체를 옮기기 쉬운 형태로 전환 -> 클라이언트와 서버 간 이동을 용이하게

      (2) deserialize: serialize의 반대 개념으로 스트림에서 객체를 재구성

     

     

    '과거 > Documented' 카테고리의 다른 글

    Singleton pattern  (0) 2021.03.06

    댓글