본문 바로가기

I T/JAVA

[JAVA] JSON의 정의 , XML과 JSON의 차이점 , 유효성 검증


  • JSON 이란 

JavaScript Object Notation의 약자로 자바스크립트 언어에서 좀 더 쉽게 데이터를 교환하고 저장하기 위하여 만들어진 텍스트 기반의 데이터 교환 표준이다. 


  • XML과 JSON의 차이점

비슷한 느낌으로 XML이 존재하지만 XML과 JSON은 엄연한 차이가 있다. 


1. 가벼움 :  JSON은 먼저 종료 태그를 사용하지 않으며, 구문도 XML에 비해 짧고 더 빠르게 읽고 쓸 수가 있다. 

   XML은 XML 파서로 파싱되며, JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱된다. 

2. 배열 사용 : 또한 JSON은 배열을 사용할 수 있으나 XML은 배열 사용이 불가능하다. 

3. 보안성 : JSON과 달리 XML은 적절하게 파싱(Parsing)을 거쳐도 BL(Billion Laughs)공격 또는 EE(External Entity)공격 같은 보안 취약성을 일부 가지고 있다. 



XML 예제

 JSON 예제

 <cat>

    <name>냥이</name>

    <age>14</age>

    <weight>5</weight>

</cat>

 {

    "name": "식빵",

    "age": 14,

    "weight": 5

}


스택오버플로우의 인기 태그 JSON

스택오버플로우의 인기 태그 JSON 


처음에 JSON은 자바스크립트로 작업했지만, 지금은 여러 언어를 지원하며 비동기식 브라우저/서버 통신을 위한 XML의 대안으로 주가를 높이고 있다.




XML / JSON 유효성 검증 사이트 바로가기