Ajax, JSON, GSON

oYJo·2025년 3월 12일

Spring

목록 보기
7/29

Ajax

1️⃣ Ajax

Ajax란?

  • Asynchronous JavaScript and XML의 약자
  • JavaScript를 이용하여 비동기식으로 클라이언트와 서버가 데이터(XML)를 주고받는(통신) 방식
  • 데이터 형식은 XML 뿐만 아닌 Text, HTML, JSON, CSV 등 다양한 형식 사용 가능

동기식 데이터 통신

클라이언트가 서버로 데이터를 요청하면 응답이 올 때 까지 다른 작업은 대기

비동기식 데이터 통신

클라이언트가 서버로 데이터 요청 후 응답을 기다리지 않고 다른 작업 수행 가능
추후 요청에 대한 응답이 오면 응답에 관련된 작업을 진행

2️⃣ Ajax 특징

  • 전체 페이지를 갱신하지 않고 일부분만 업데이트 가능
  • 사용자에게 즉각적인 반응과 풍부한 UI 경험을 제공 가능
  • ActiveX나 플러그인 프로그램 설치 없이 이용 가능
  • JavaScript 방식, jQuery 방식으로 구현 가능

3️⃣ Ajax 단점

  • Ajax는 JavaScript이므로 브라우저에 따른 크로스 브라우저 처리가 필요함
  • 오픈 소스로 차별화가 어려움
  • 연속적인 데이터 요청 시 서버 부하 증가하여 페이지가 느려짐
  • 페이지 내 복잡도가 증가하여 에러 발생 시 디버깅이 어려움

JSON

1️⃣ jQuery방식 Ajax

JSON

  • JavaScript Object Notation (자바스크립트 객체 표현법)
  • 간단한 포맷
    ▪ 괄호 {} 내에 key : value 쌍으로 구성 → { “key” : value }
    ▪ key → 반드시 문자열 사용 (쌍 따옴표(“”) 표기 필수)
    ▪ value → String, Number, Boolean, Array, Object, null 데이터 저장 가능
    (단, char 데이터는 저장 불가)
  • 객체{} 또는 배열[] 데이터를 효율적으로 표시 가능

JSON 특징

  • Ajax 통신에서 Object 타입의 데이터 전송 시 XML 대비 용량이 작고 속도가 빠름
    → 경량 데이터 교환 방식
  • 간단한 포맷을 가지고 있어 이해하기 쉬움
  • 순수 TEXT 기반
    ▪ 구조화된 TEXT 형식
    ▪ 대부분의 프로그래밍 언어에서 JSON 포맷 데이터를 핸들링 할 수 있는 라이브러리를 제공 → 시스템간 객체 교환에 용이

GSON

1️⃣ jQuery방식 Ajax

GSON

  • Google JSON의 약어
  • Google에서 만든 오픈 라이브러리로 JSON파일을 쉽게 읽고, 만들 수 있는 메소드 제공
  • toJSON(Object, Appendable)
    ▪ 매개변수 Object를 JSON으로 변환하여 Appendable에 연결된 출력스트림으로
    출력하는 메소드
    ▪ 기존 JSON방식으로 변환하기 번거로웠던 List, Map 객체를
    별도의 방법이 아닌 toJson()메소드 하나도 쉽게 JSON으로 변환 가능
    ▪ List, Map 뿐만 아닌 모든 Object 변환 가능.
profile
Hello! My Name is oYJo

0개의 댓글