* Annotation기반 Controller

1. @Controller
- 컨트롤러 클래스 표시

2. @RequestMapping
- 요청 URL 등록, 처리할 요청방식 지정
- 구문
- RequestMapping("오청 url")
- RequestMapping(value="요청URL" method=요청방식)
- Controller 클래스에 등록
- Controller 메소드에 등록

3. Controller 클래스 스프링 설정파일에 등록
- <bean>을 이용해 등록
- 자동 스캔
- <context:component-scan base-package="package"/>

4. Controller 메소드에서 요청파라미터 처리
- DTO(Command) 이용
- 요청파라미터와 매칭되는 이름의 property를 가진 DTO
- 요청파라미터 name을 이용한 매개 변수 사용
- 같은 이름으로 여러 개 값이 넘어올 경우 String[] 사용
- @RequestParam Annotation 사용
- 속성
- value : 요청파라미터 이름 설정
- required : 핑수 여부. 안넘어오면 400 오류 발생. 기본 : true
- defaultValue : 값이 안넘어 올 경우 설정할 기본 값

5. Controller 메소드 이용가능 매개변수 타입
- HttpServletRequest
- HttpServletResponse
- HttpSession
- 요청파라미터 연결 변수
- 요청파라미터를 설정할 DTO 객체
- @CookieValue 적용 매개변수 - 쿠키 값 매핑
- @CookieValue(value="name", required=false)
- Map, Model, ModelMap
- View에 전달할 모델 데이터 설정시 사용

6. Controller 메소드 설정 가능 return type
- Controller 메소드 설정 가능 return type
- ModelAndView : View 정보와 응답 데이터 설정
- View에 전달할 값 설정
- Map
- Model
- View는 요청 URL로 결정됨
- String : View의 이름 리턴
- View 객체
- void
- Controller 메소드 내에서 응답을 직접처리 시 사용

 

Posted by 조은성
,