본문 바로가기

BE/Spring

[Spring] Ajax, RestController

 

 

 

 

 

Ajax, RestController

프로젝트 생성 및 버전 변경, 한글 인코딩 설정 후 메이븐 프로젝트 업데이트까지 실행할 것

 

경로설정

 

jsp 파일 생성하여 작성

 

ajax 를 사용하지 않으면 전체 페이지가 다시 요청되어 로딩된다...!!

ajax 를 사용하면 페이지 전체를 요청하는게 아닌 데이터만 요청한다

 

ajax 사용할 경로 추가

 

ajax01.jsp 파일 생성해서 코드 작성 후 테스트

 

>> 페이지가 완전 로딩되지 않고 요청에 return 되는 값만 출력된다!!!

 

경로 추가 ( @ResponseBody 태그를 사용해 return 값이 jsp 파일이 아닌 데이터 형식으로 반환하는 메소드임을 선언!! )

 

ajax 를 사용하여 data 매개변수로 응답 데이터를 저장한뒤 span 태그의 내부 html 을 데이터 값으로 변경

 

 

 

 

 

데이터를 json 형식으로 보내주기 위해 라이브러리 추가

2.9.5 버전 라이브러리 추가

 

라이브러리 추가

 

DTO 클래스 생성 >> 변수 선언 및 getter / setter 생성

 

Controller 에서 데이터 받아 처리하는 코드 작성

 

ajax03.jsp 작성 ( 데이터 json 형태로 넘겼다가 받아와서 값 처리 )

 

넘어오는 값을 DTO 가 아닌 Map 으로 담아서 처리할 수도 있음

Map 으로 담아서 처리

 

결과 확인

 

 

 

 

 


728x90

 

 

 

 

 

RestController 사용

@Controller : 페이지를 return 하는 컨트롤러

@RestController : 데이터를 return 하는 컨트롤러

 

Controller 작성

 

ajax04.jsp 작성

 

jquery 를 사용하여 ajax 를 사용

 

ajax04.jsp 를 출력하기 위해 HomeController 에 경로 설정

 

※ 전달받는 값이 json 형식이 아니라 text 형식이라 오류가 발생했음!!! ※

※ text 형식을 반환할거면 produces 값에 application/text 로 변환해주면 되는데 일단은 Map 에 키와 값으로 담아서 전송 ※

 

json 형태로 전송

 

응답으로 넘어온 데이터의 result 키를 확인

 

코드 실행
728x90