-
웹 API를 위한 JSON vs XML프로젝트 2023. 4. 25. 10:35
JASON (JavaScript Object Notation)
- 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식
- 자바 스크립트 객체 표기법
- 이해하기 쉽고 용량이 적어 XML을 대체해서 데이터 전송 등에 많이 사용
- JSON은 텍스트 기반이기 때문에 다양한 프로그래밍 언어에서 데이터를 읽고 사용할 수 있다
JSON 특징
- 서버와 클라이언트 간의 교류에서 많이 사용된다
- 자바스크립트를 이용해 JSON 형식의 문서를 쉽게 자바스크립트 객체로 변환할 수 있다는 장점이 있다
- JSON 문서 형식은 자바스크립트 객체의 형식을 기반으로 만들어졌다
JSON 문법
- JSON 형식은 key/value가 존재할 수 있으며 key값이나 문자열은 항상 큰따옴표를 이용해 표기
- 객체는 중괄호( {} )로 묶어서 표현하고, 배열은 대괄호( [] )로 묶어서 표현한다
- 객체, 배열 등의 표기를 사용할 수 있다
- 원하는 만큼 중첩시켜 사용할 수 있다
- 데이터의 값으로 다양한 타입을 사용할 수 있다
> null, number, string, array, object, boolean
- 자바스크립트의 문법과 굉장히 유사하지만 텍스트 형식일 뿐이
JSON 형식
1. name-value 형식
- object
- { String key : String value }
- { String key : String value, String key : String value }
- { key1 : { key2 : value }, key2 : [arr1, arr2, arr3] }
{ "height" : "180", "weight" : "80" }
2. 값들의 순서화된 리스트 형식
- Array
- [ value1, value2, ... ]
{ "height" : "180", "weight" : "80", "hobby" : ["drawing", "workout"] }
XML
- EXtensible Markup Language
- HTML과 매우 비슷한 문자 기반의 마크업 언어
- 사람과 기계가 동시에 읽기 편한 구조
JSON, XML 공통점
- 데이터를 저장하고 전달하기 위해 고안되었다
- 계층적인 데이터 구조를 가진다
- 다양한 프로그래밍 언어에 의해 파싱될 수 있다
JSON, XML 차이점
- JSON은 종료 태그를 사용하지 않는다
- JSON의 구문이 XML의 구문보다 더 짧다
- JSON 데이터가 XML 데이터보다 더 빨리 읽고 쓸 수 있다
- XML은 배열을 사용할 수 없지만 JSON은 배열을 사용할 수 있다
- XML은 XML 파서로 파싱되며, JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱 된다
XML 문서는 XML DOM을 이용하여 해당 문서에 접근한다.
JSON은 문자열을 전송받은 후 해당 문자열을 바로 파싱 하므로, XML보다 빠른 처리 속도를 보여준다.
따라서 HTML과 자바스크립트가 연동되어 빠른 응답이 필요한 웹 환경에서 많이 사용된다
JSON은 전송받은 데이터의 무결성을 사용자가 직접 검증해야 한다
따라서 데이터 검증이 필요한 곳에서는 스키마를 사용하여 데이터의 무결성을 검증할 수 있는 XML이 많이 사용된다
(참고)
https://velog.io/@surim014/JSON%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80
https://codingazua.tistory.com/4
728x90'프로젝트' 카테고리의 다른 글
공공데이터 API 활용하기 (0) 2023.05.01 JSON 덮어쓰기, JSONArray에 JSONObject put할 때의 문제 (0) 2023.04.26 프로젝트 기본 환경설정 - 1 (0) 2023.01.18 REST와 REST API (0) 2022.12.26 스프링 프레임워크(Framework)에 대하여, 스프링부트? (0) 2022.12.04