스프링 부트, 입문! 18

윤현우·2022년 11월 30일
0

스프링 부트, 입문!

목록 보기
15/18
post-thumbnail

RestAPI와 JSON

RestAPI

웹서비스를 사용하는 클라이언트는 웹브라우저 뿐만아니라 다양한 기기에서도 사용이된다.
따라서 웹서버는 다양한 클라이언트의 요청에 적절한 응답을 해야한다.(각각의 기기에 따른 뷰 페이지)
모든 기기에 적절한 대응을 하기 위한 서버 설계가 RestAPI이다.

RestAPI란 웹서버의 자원을 클라이언트에 구애받지 않고, 사용할 수 있게 하는 설계방식으로써 http를 통해 서버의 자원을 다루게 하는 기술이다.

이때 서버의 응답은 특정 기기에 종속되지 않도록 모든 기기에서 통용될 수 있도록 화면이 아닌 데이터만 반환을 한다.

이러한 데이터들은 최근 JSON형식으로 보내지고 있다.
(이전 시간 까지는 HTML의 form태그를 사용하였지만, form 형태를 JSON형태로 보내는 것이다.)


XML과 JSON

공통점

  • XML과 JSON은 데이터를 저장하고 전달하기 위해 고안된 데이터 형식이다.
  • 기계뿐만 아니라 사람도 쉽게 읽을 수 있다.
  • 계층적인 데이터 구조를 가진다.
  • 다양한 프로그래밍 언어에 의해 파싱될 수 있다.
  • XMLHttpRequest 객체를 이용해 서버로부터 데이터를 전송받을 수 있다.

차이점

  • JSON은 종료 태그를 사용하지 않는다.
  • JSON의 구문이 XML의 구문보다 더 짧다.
  • JSON 데이터가 XML 데이터보다 더 빨리 읽고 쓸 수 있다.
  • XML은 배열을 사용할 수 없지만, JSON은 배열을 사용할 수 있다.
  • XML은 XML 파서로 파싱되며, JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱된다.

XML 특징

  • XML은 다른 목적의 마크업 언어를 만드는 데 사용되는 다목적 마크업 언어입니다.
  • XML은 다른 시스템끼리 다양한 종류의 데이터를 손쉽게 교환할 수 있도록 해줍니다.
  • XML은 새로운 태그를 만들어 추가해도 계속해서 동작하므로, 확장성이 좋습니다.
  • XML은 데이터를 보여주지 않고, 데이터를 전달하고 저장하는 것만을 목적으로 합니다.
  • XML은 텍스트 데이터 형식의 언어로 모든 XML 문서는 유니코드 문자로만 이루어집니다.

JSON 특징

  • JSON은 자바스크립트를 확장하여 만들어졌습니다.
  • JSON은 자바스크립트 객체 표기법을 따릅니다.
  • JSON은 사람과 기계가 모두 읽기 편하도록 고안되었습니다.
  • JSON은 프로그래밍 언어와 운영체제에 독립적입니다.
  • 텍스트 기반이므로 어떠한 프로그래밍 언어에서도 JSON 데이터를 읽고 사용할 수 있습니다.
  • XML의 대안으로서 좀 더 쉽게 데이터를 교환하고 저장하기 위하여 고안되었습니다.

References (참고 자료)
https://www.inflearn.com/course/%EA%B0%9C%EB%85%90%EC%8B%A4%EC%8A%B5-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EC%9E%85%EB%AC%B8
https://velog.io/@cil05265/XML%EA%B3%BC-JSON%EC%9D%98-%ED%8A%B9%EC%A7%95-%EA%B3%B5%ED%86%B5%EC%A0%90-%EC%B0%A8%EC%9D%B4%EC%A0%90

profile
개발자가 되는 그날까지

0개의 댓글