Servlet, JSP

AJAX

chojdsj 2023. 7. 15. 23:17
728x90
Ajax란?

- Asynchronous JavaScript and XML의 약자

 

- JavaScript를 이용하여 비동기식으로 클라이언트와 서버가 데이터(XML)를 주고받는(통신) 방식

 

- 데이터 형식은 XML 뿐만 아니라 Text, HTML, JSON, CSV등 다양한 형식 사용 가능

 

 

* 동기식 데이터 통신 * 

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

 

 

* 비동기식 데이터 통신 *

- 클라이언트가 서버로 데이터 요청 후 응답을 기다리지 않고 다른 작업 수행 가능.

   추후 요청에 대한 응답이 오면 응답에 관련된 작업을 진행.

 

 

Ajax 특징

 

- 전체 페이지를 갱신하지 않고 일부분만 업데이트 가능

 

- 사용자에게 즉각적인 반응과 풍부한 UI 경험을 제공 가능

 

- ActiveX나 플러그인 프로그램 설치 없이 이용 가능

 

- JavaScript 방식, jQuery 방식으로 구현 가능

 

 

Ajax 단점

 

- Ajax는 JavaScript 이므로 브라우저에 따른 크로스 브라우저 처리가 필요함

 

- 오픈 소스로 차별화가 어려움

 

- 연속적인 데이터 요청 시 서버 부하 증가하여 페이지가 느려짐

 

- 페이지 내 복잡도가 증가하여 에러 발생 시 디버깅이 어려움 

 

 

 

 

 

JavaScript 방식 Ajax

 

- Ajax는 브라우저 내장 객체인 XMLHttpRequest를 이용하여 비동기식으로 데이터를 송수신함

 

1) 객체 생성 -> script문에 요청을 위한 XMLHttpRequest객체 생성

 

2) 서버 응답 처리 함수 생성 및 지정 -> onreadystatechange에 함수 지정

     - 지정되는 함수에 포함될 내용

     1) 응답 상태 확인 -> readyState(서버 응답 상태 확인), status(Http 응답 상태 코드 확인)

      2) 응답 완료(서버 응답 데이터 접근) -> responseText / responseXML

3) 요청 방식, 대상(서버), 동기/비동기 지정 -> open( ) 메소드 호출

 

4) 대상(서버)에 전송 -> send( ) 메소드 호출 

 

 

 

jQuery 방식 Ajax

 

 

- 장점

1) JavaScript 방식보다 구현 방법이 간단함 -> 코드 길이 감소

 

2) 직관적이며 다양한 방법의 코딩 가능

 

3) 크로스 브라우저 처리를 jQuery가 자동으로 해결

-> JavaScript 방식 XMLHttpRequest 객체 생성 시 브라우저 검사 생략 가능

 

 

- 구현 방법

 

$.ajax({

          url : "요청이 전송되는 url이 포함된 문자열" // 필수 구현 속성

 

          [,settings] //  선택 속성(다수 속성 선택 가능)

});

 

 

- jQuery 방식  Ajax 주요 속성

 

 

 

'Servlet, JSP' 카테고리의 다른 글

JSON  (0) 2023.07.15
JSTL  (0) 2023.07.09
EL  (0) 2023.07.09
JSP  (0) 2023.07.08
Servlet  (0) 2023.07.03