JSON vs XML
본문 바로가기
Spring/기타

JSON vs XML

by IYK2h 2021. 7. 16.
728x90

JSON(JavaScript Object Notation)

  • 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 포멧
  • 어떠한 통신 방법도, 프로그래밍 문법도 아닌 단순히 데이터를 표시하는 표현 방법일 뿐
  • JSON 표현식은 사람과 기계 모두 이해하기 쉬우며 용량이 작아서 최근에는 XML을 대체해 데이터 전송 등에 많이 사용

특징

  • 서버와 클라이언트 간의 교루에서 일반적으로 많이 사용
  • js의 객체 표기법과 아주 유사
  • js를 이용하여 JSON 형식의 문서를 쉽게 js 객체로 변환할 수 있는 이점이 있다.
  • JavaScript에서 객체를 만들 때 사용하는 표현식을 의미(json은 js기반)
  • 특정 언어에 종속되지 않으며, 대부분 프로그래밍 언어에서 JSON 포멧의 데이터를 핸들링 할 수 있는 라이브러리 제공

단점

  • 단순히 데이터만이 아닌 js 그 자체도 전달할 수 있다.(데이터인 줄 알고 받았는데 악성 스크립트가 될 수 있다.)
  • 위와 같은 이유로 데이터만 추출하기 위한 JSON 관련 라이브러리를 따로 사용하기도 함
  • 데이터의 형식적 무결성 확보입니다.
    • 입력 데이터의 형식적 무결성 확보는 수치적인 약간의 성능 향상보다 더 중요하게 고려해야 하는 부분입니다. 즉, 웹 API의 입력 데이터와 출력 데이터의 무결성을 검증, 확보, 유지하는 과정은 산술적인 이익보다 시스템 동작에 더 중요할 수 있다

XML(Extensible Markup Language) - 확장 가능한 마크업 언어

  • 어떤 정보를 표현하는데 필요한 부가 정보를 함께 기술하기 위한 방법을 사용자가 새롭게 정의하여 사용할 수 있는 표기 방법
  • 데이터를 기술하는 정도로만 사용
  • 구조적인 데이터를 위한 것
  • HTML기반 - 데이터 값 양쪽으로 태그 존재

*markup 출력하고자 하는 데이터에 어떤 정보를 덧붙이고자 할 때 이를 표기하기 위한 방법

JSON vs XML

  • XML은 JSON에 비해 크기가 크고 태그때문에 길이가 길다.
항목 JSON XML
메타 데이터의 비중 (메타 데이터: 실질 데이터 외에 추가되는 외적인 정보들) 낮음 높음(XML 태그 때문)
파싱의 편의성 높음 낮음
파싱 성능 상대적 높음 상대적 낮음
인자 및 데이터 형식의 문서화 일반 범용 문서 형식 XML전용 문서 형식으로 작성
형식 정의 약함 강함
형식 검증 불편함 편리함

Reference

https://www.coovil.net/xml-vs-json/

728x90

댓글