본문 바로가기
학원 정리/스프링

요청핸들러 메소드의 매개변수

by csatlemin 2023. 1. 12.

 요청핸들러 메소드의 매개변수가 기본자료형 혹은 String형 인 경우
- 매개변수의 이름과 동일한 이름으로 요청파라미터 값을 조회해서 매개변수로 전달한다.
- 매개변수의 타입이 기본자료형 타입인 경우 해당 타입으로 형변환해서 전달한다.
- 매개변수의 타입이 기본자료형(정수, 실수, 문자, 불린)일 때, 
요청파라미터값이 존재하지 않으면 오류가 발생한다.
요청파라미터값이 해당 타입으로 변환할 수 없을 때 오류가 발생한다.

 @RequestParam
요청파라미터값을 요청핸들러의 매개변수와 매핑시키는 어노테이션이다.
주요 속성
name : 요청파라미터의 이름을 지정한다. 
required : 기본값은 true다. false로 지정하면 name에 지정한 요청파라미터값이 없어도 오류가 발생하지 않는다.
defaultValue : name에 지정한 요청파라미터값이 존재하지 않을 때 매개변수로 대입되는 기본값을 설정한다.
  defaultValue의 값은 문자열로 설정되지만 매개변수에 대입될 때는 해당 타입으로 형변환된다.
예시
public String list(@RequestParam(name = "page", required = false, defaultValue = "1") int page,
       @RequestParam(name = "rows", required = false, defaultValue = "10") int rows,
       @RequestParam(name = "sort", required = false, defaultValue = "date") String sort,
   Stirng keyword){}
  public String login(String id, String password, @RequestParam(name = "age", required = false, defaultValue = "0") int age) {}
 
 요청핸들러 메소드의 매개변수로 가능한 객체 및 어노테이션
  HttpServletRequest 요청객체
  HttpServletResponse 응답객체
  HttpSession 세션객체
  WebRequest Spring 제공하는 객체다. 요청객체가 가지고 있는 정보 대부분을 제공하는 객체다.
  TimeZone 시간정보
  Locale 지역정보(국가, 언어)
  InputStream 클라이언트와 연결된 읽기 전용 스트림
  OutputStream 클라이언트와 연결된 쓰기 전용 스트림
  Reader 클라이언트와 연결된 텍스트 읽기 전용 스트림
  Writer 클라이언트와 연결된 텍스트 쓰기 전용 스트림
  @RequestParam 요청파라미터와 매개변수를 매핑시키는 어노테이션
  @PathVariable 요청 URL 경로에 포함된 파라미터값과 매개변수를 매핑시키는 어노테이션
  @ModelAttribute 요청파라미터와 해당값을 저장하는 객체를 매핑시키는 어노테이션
  @RequestBody 요청메세지의 바디부 정보와 매개변수를 매핑시키는 어노테이션
  @Valid 요청파라미터값의 유효성 여부를 검증시키는 어노테이션
  Model 뷰에 전달할 정보를 저장하는 객체
  Errors 요청파라미터값의 유효성 검증 결과를 저장하는 객체
  BindingResult 요청파라미터값의 유효성 검증 결과를 저장하는 객체
  SessionStatus 세션에 저장된 정보를 삭제하는 객체
  기본자료형 요청파라미터값을 전달받는다.
  String 요청파라미터값을 전달받는다.
  사용자정의 객체 요청파라미터값을 전달받는다.

댓글