JSON

개념
JSON(JavaScript Object Notation)의 개념 - 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법으로, 문자열화 된 데이터를 객체화하는 경량의 데이터 교환 형식

Ⅰ. 웹 상에서 데이터 표현을 위한 JSON개요

가.  JSON(JavaScript Object Notation)의 개념

- 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법으로, 문자열화 된 데이터를 객체화하는 경량의 데이터 교환 형식

 

나.  JSON특징

- 경량의 데이터 교환 포맷

 - JavaScript의 구문 형식을 준수

 - 프로그래밍 언어나 플랫폼에 독립적

 

II. JSON문법 및 장단점

 가. JSON의 문법

항목

설명

문법개요

- 자바스크립트 표준인 ECMA-262 3판의 객체 문법에 바탕

- 유니코드 인코딩

- 표현 자료형은 수, 문자열, 참/거짓, 배열, 객체

구조

- name/value 쌍으로 구성

- {로 시작하고 }로 끝남

- 배열은 대괄호[ ]로 나타냄

- 각각의 이름은 :와 ,로 구분된 name/value쌍의 형식을 다름

사용 예

{“product”:”pencil”,”price”:1000}

{

“이름”:”홍길동”,

“나이”: 30,

“성별”: “남”,

}

도구

- Paser : JSON text파일을 해석하고 자바오브젝트로 변환

-Renderer : 자바를 text로 표현

- Serializer : POJO를 JSON표현으로 직렬화

- Mapper : POJO와 JSON을 매핑

- Validator : JSON 스키마를 이용해서 파일내용 유효성 체크

 

나. JSON의 장단점

장점

단점

-XML보다 가볍고 빠름

-XML데이터 자료종류에 큰 제한 없음

-XML은 모두 string, JSON은 string, number, array, Boolean

-Javascript코드안에서 JSON객체 접근이 쉬움

-eval()로 객체화 시 악성코드 유입

-태그가 없어 가독성 떨어짐

-DTD같은 것이 없기 때문에 데이터 형식이 틀렸을 경우에 체크가 쉽지 않음

 

Ⅲ. JSON선택시 고려사항

가. 값을 얻어오기에는 XML보다 JSON이 더 편하고, 속도도 JSON이 좀더 빠름

나. 하지만 복잡한 데이터를 표현 할 때는 XML이 더 편함

다. JSON은 표준이 아니기에 라이브러리가 필요함

라. JSON이 자바스크립트에서는 XML보다 장점이 많으나 그 외 언어에서는 장점이 무효화 되고 호환성 확보가 어려움

마. Ajax기반 프로그래밍 시 XML을 DOM트리를 통해 데이터에 접근하는 것보다 동일한 구조를 갖는 J avaScript객체로서 다루는 것이 편리함

댓글