본문 바로가기

JAVA

[JAVA] Ajax에 대하여 ( 업데이트 필 )

오늘은 Ajax에 대해 알아보겠다.


Ajax의 정의

AJAX란 비동기 자바스크립트와 XML (Asynchronous JavaScript And XML)을 말합니다.

간단히 말하면, 서버와 통신하기 위해 XMLHttpRequest 객체를 사용하는 것을 말합니다.

JSON, XML, HTML 그리고 일반 텍스트 형식 등을 포함한 다양한 포맷을 주고받을 수 있습니다.

AJAX의 강력한 특징은 페이지 전체를 리프레쉬 하지 않고서도 수행되는 "비동기성"입니다.

이러한 비동기성을 통해 사용자의 Event가 있으면 전체 페이지가 아닌 일부분만을 업데이트할 수 있게 해 줍니다.

- 공식 페이지 


간단히 말하면 Ajax를 이용하면 페이지의 이동 없이 데이터 교환 및 화면 갱신이 가능하다. 이를 비동기 처리라고 하는데

일반적으로 사용자가 어떤 요청을 했을 때 화면은 반짝이고 요청한 내용이 보이는데 Ajax를 이용하면 그런 과정이 생략된다. 대표적으로 댓글을 예시로 들 수 있다.

 

 

Ajax의 문법

$.ajax({
    url: "",
    type: "",
    cache: ,
    dataType: "",
    data: "",
    success: function(data){
  	// 성공시 출력할 곳
    },
    error: function (request, status, error){        
	// 에러 발생시 출력할 곳 
    }
});
  • url : 요청 url을 의미한다.
  • type : 데이터 전송방식. GET 또는 POST
  • cache : 요청 페이지의 캐시 여부. false 또는 true
  • datatype : 서버에서 받아올 데이터를 어떤 형태로 해석할 것인지. xml, json, html, script를 선택할 수 있다.
  • data : 서버로 데이터를 전송할 때 사용한다. "name="+name 이런 형태로
  • success : Ajax 통신에 성공했을 때 실행되는 이벤트.
  • error : Ajax 통신에 실패했을 때 실행되는 이벤트. request, status, error로 에러 정보를 확인할 수 있다.

이런 식으로 사용이 가능하다. 

 

여기서 @ResponseBody의 역할을 알아야 하는데,

@RequestMapping으로 String type을 반환해 주면, ViewResolver에서 정의한 prefix와 suffix가 return값에 추가되어 view로 이동이 된다.

@ResponseBody를 사용해 주면 view를 생성해 주는 것이 아니라, JSON 혹은 Object 형태로 데이터를 넘겨준다.

 

 

사용하려면 JQuery를 등록해야 하고 그 외에도 viewResolver를 등록해 줘 야한 등 의외로 손이 많이 가지만

매우 편리하니 자주 사용하는 편이 좋은 것 같다.

 

<추후 Controller, View, Client를 업데이트하도록 하겠다. >

 

반응형

'JAVA' 카테고리의 다른 글

[JAVA] 스프링의 정의와 특징  (0) 2023.07.24
[JAVA] 인터페이스 Interface  (0) 2023.06.19
[JAVA] 메서드에 대하여  (0) 2023.04.16
[JAVA] Web에서의 맵핑(Mapping)이란??  (0) 2023.04.11
[JAVA] 자바 기본 지식에 대하여  (0) 2023.04.06