Web

XML & JSON & YAML

JUNGKEUNG 2021. 10. 30. 23:39

XML & JSON & YAML 모두 데이터를 표현하는 형식이다

 

1. XML


데이터를 표현하기 위하여 HTML과 비슷한 구조를 가지고 있다. XML의 특징은 태그로 구분, 트리(Tree) 계층 구조를 가지고 있다.

태그는 꺽쇠(< >)를 이용하여 명시하며, 닫는 태크에는 슬래시( / )을 함께 넣어준다. 

XML은 주석이 가능하다. <!--주석 내용 --> 형태로 사용할수 있다.

<?xml version="1.0" encoding="UTF-8"?>
<!-- 주석내용 작성 -->
<users>
  <user>
    <name>홍길동</name>
    <score>95</score>
    <hobby>
      <element>Soccer</element>
      <element>Ninza</element>
    </hobby>
  </user>
  <user>
    <name>이순신</name>
    <score>100</score>
    <hobby>
      <element>Sing</element>
      <element>Dancing</element>
    </hobby>
  </user>

 

2. JSON(JavaScript Object Notation)


Json도 XML과 비슷하게 데이터를 처리하기 위한 형식으로 구성되어있다. Json은 모든 프로그래밍 언어에서 Json을 지원한다는 점에서 XML & YAML 보다 채택률이 높다.  

 기본적으로 JSON 형식에서는 키(key)값이 서로 다른 형태로 사용된다. 그리고 배열이 가능하며, XML과 다르게 꺽쇠가 사용되지 않고 대괄호 { } 와 큰 따옴표 " " 를 이용해 계층 구조를 형성한다. 배열을 사용할때는 중괄호 [ ] 을 사용해준다.

{
	"users": {
		"1": {
			"name": "홍길동",
			"score": 95,
			"hobby": ["Soccer", "Ninza"]
		},
		"2": {
			"name": "이순신",
			"score": 100,
			"hobby": ["Sing", "Dancing"]
		},
		"3": {
			"name": "나동빈",
			"score": 97,
			"hobby": ["Coding", "Hiding"]
		}
	}
}

 

3. YAML


YAML 또한 JSON 비슷하게 사람이 읽기 쉬운 형태의 데이터 표현 형식이다. YAML XML 문법적으로 유사하다. YAML에서도 주석이 사용 가능하고 개행, 공백으로 블록을 인식하고 있다. 다만, 태그를 사용하지 않고 공백 위주로 데이터를 구분하므로 한 줄로 작성할 수 없다. 쓰고 있는 사람의 편의를 우선시하기 때문에 docker compose spring 설정 파일에 자주 사용하게 된다.  YAML은 주석 사용이 가능하다. 

users:

  1:

    name: 홍길동

    score: 100

    subject:

      - Software

      - Math

  2:

    name: 이순신

    score: 97

    hobby:

      - Korean

      - History

'Web' 카테고리의 다른 글

DB Connection Pool  (0) 2021.11.05
아스키코드 vs 유니코드  (0) 2021.11.03
[생활코딩] Home Server 강의 정리  (0) 2021.10.30
웹 소켓이란?  (0) 2021.07.04
웹 브라우저의 요청 흐름  (0) 2021.07.04