https://writemylife.tistory.com/43
ajax 기초 설명은 위에 글을 참고 해 주세요~
https://writemylife.tistory.com/98
spring security를 사용하고 있을 때의 ajax 사용은 위에 글을 참고 해 주세요~
Spring으로 ajax를 url mapping을 해서 controller에서 요청을 받아 data값을 parameter로 받을 때, 요청을 처리하고 서버로 반환 할 때 사용하는 annotation에 대해 정리 하려고 합니다.
@ModelAttribute
1.파라미터로 넘겨 준 타입의 오브젝트를 자동으로 생성 한다
2.@ModelAttribute 뒤에 써 있는 클래스는 bean class 이어야 한다.
3.그리고 getter, setter가 명명 규칙에 맞게 만들어져 있어야 한다.
4.생성된 오브젝트에 HTTP로 넘어 온 parameter들을 setter를 이용해 자동으로 바인딩 한다.
5.@ModelAttribute("NAME") 형태로 붙일 경우 .jsp파일에서 jstl(jsp Standard Tag Library)에 의해서 ${(NAME.property) 형태로 객체의 값을 사용 할 수 있게 된다.
@ResponseBody
- 자바 객체를 HTTP의 body에 넣어 전달
ajax는 HTTP 요청이므로 응답도 HTTP로 해야 한다. 그래서 ajax와 mappin 되어 있는 controller 메소드에 @ResponseBody를 안 붙이면 success 핸들러로 가지 못하고 error 핸들러로 가게 될 것입니다.
cf) @Controller가 아니라 @RestController를 사용한 controller라면 리턴값에 HTTP 의 body에 넣어 전달 되므로 @ResponseBody를 붙일 필요가 없습니다.
'웹프로그래밍 > spring~~' 카테고리의 다른 글
intellij로 개발하면서 import가 안될 때 (0) | 2020.01.27 |
---|---|
GCP에 그레이들 설치 (0) | 2019.09.12 |
Spring Dispatcher-Servlet이란? (0) | 2019.09.08 |
Spring Security에서 Ajax post 방식 사용할 때 (0) | 2019.08.31 |
form 태그의 th:action을 동적으로 바꾸는 방법 (0) | 2019.08.23 |
@PathVariable, URL에 파라미터 전달하기 (0) | 2019.08.20 |
오류 : cannot find symbol (0) | 2019.08.13 |
Spring Security를 적용해보자(2) (0) | 2019.08.13 |