※ 컨트롤러 메소드의 파라미터 타입
파라미터 타입 |
설 명 |
HttpServletRequest, HttpServletResponse, HttpSession |
서블릿 API |
java.util.Locale |
현재 요청에 대한 Locale |
InputStream, Reader |
요청 컨텐츠에 직접 접근할 때 사용 |
OutputStream, Writer |
응답 컨텐츠를 생성할 때 사용 |
@PathVariable 어노테이션 |
URI 템플릿 변수에 접근할 때 사용 |
@RequestParam 어노테이션 |
HTTP 요청 파라미터를 매핑 |
@RequestHeader 어노테이션 |
HTTP 요청 헤더를 매핑 |
@CookieValue 어노테이션 |
HTTP 쿠키 매핑 |
@RequestBody 어노테이션 |
HTTP 요청의 몸체 내용에 접근할 때 사용, HttpMessageConverter를 이용해서 HTTP 요청 데이터를 해당 타입으로 변환 |
Map, Model, ModelMap |
뷰에 전달할 모델 데이터를 설정할 때 사용 |
커맨드 객체 |
HTTP 요청 파라미터를 저장한 객체. 기본적으로 클래스 이름을 모델명으로 사용. @ModelAttribute 어노테이션을 사용하여 모델명을 설정 |
Errors, BindingResult |
HTTP 요청 파라미터를 커맨드 객체에 저장한 결과. 커맨드 객체를 위한 파라미터 바로 다음에 위치 |
SessionStatus |
폼 처리를 완료 했음을 처리하기 위해 사용. @SessionAttribute 어노테이션을 명시한 session 속성을 제거하도록 이벤트를 발생시킴 |
● Errors, BindingResult는 연관된 커맨드 객체 바로 다음에 위치해야 함. 그 외의 파라미터는 순서에 상관 없음
[참고자료] Spring 3.0 프로그래밍-최범균
'프로그램 > Spring 3.0' 카테고리의 다른 글
컨트롤러 메소드의 파라미터 타입 - @CookieValue, @RequestHeader (0) | 2012.05.15 |
---|---|
컨트롤러 메소드의 파라미터 타입 - @RequestParam : 파라미터 매핑 (0) | 2012.05.15 |
HTML폼과 커맨드 객체 - @RequestMapping, @ModelAttribute (0) | 2012.05.15 |
Controller 구현 및 Controller 메소드의 HTTP 전송 방식(GET / POST) (0) | 2012.05.15 |
DispatcherServlet 설정, ContextLoaderListener, 캐릭터 인코딩 (0) | 2012.05.14 |