http://wiki.gurubee.net/pages/viewpage.action?pageId=26740988
Controller와 ModelAndView
1. Controller의 이해
1.1 Controller란?
- 컨트롤러의 개념은 MVC디자인 패턴의 일부이다.(MVC의 C)
- 컨트롤러는 사용자 요청을 해석하고 처리요청하여 결과를 view로 반환한다
- 스프링에서는 다양한 종류의 컨트롤러 클래스를 제공하고 있는데 이들 클래스는 기본적으로
org.stringframework.web.servlet.mvc.Controller인터페이스를 구현하고 있다.
1.2 Cotroller의 종류
- 2.5버전의 Controller이다.
용도 |
클래스(인터페이스) |
설명 |
단순처리 |
Controller |
별도 기능을 제공하지 않는 컨트롤러 요청 파라미터 처리 등의 작업을 직접 구현해야 한다. |
단순처리 |
AbstractController |
|
파라미터 매핑 |
AbstractCommandController |
요청 파라미터를 객체레 저장해 주며, 파라미터 값 검증 기능을 제공한다. |
입력 폼 처리 |
SimpleFormController |
게시글 등록과 같이 입력폼과 폼의 데이터를 처리할 때 사용 |
다중 페이지 입력 폼 처리 |
AbstractWizardFormcontroller |
여러 페이지에 걸쳐서 데이터를 입력하는 경우 사용 입력 폼의 흐름을 제어하고 입력한 데이터를 처리할 떄 사용한다. |
다중액션 |
MultiActionController |
연관되거나 비슷한 로직을 수행하는 다수의 기능을 하나의 컨트롤러에서 구현할 때 사용한다. |
2. Controller 예
2.1 Controller Interface
- Spring 2.5 버전에서 지원, Spring 3.0 이후 deprecated 됨
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/01.Controller+Interface
2.2 AbstractController
- Spring 2.5 버전에서 지원, Spring 3.0 이후 deprecated 됨
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/02.AbstractController
2.3 MultiActionController
- Spring 2.5 버전에서 지원, Spring 3.0 이후 deprecated 됨
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/03.MultiActionController
2.4 AbstractCommandController
- Spring 2.5 버전에서 지원, Spring 3.0 이후 deprecated 됨
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/05.AbstractCommandController
2.5 SimpleFormController
- Spring 2.5 버전에서 지원, Spring 3.0 이후 deprecated 됨
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/06.SimpleFormController
2.6 Annotation-based Controller
- Spring 3.0 이상 버전에서도 지원
- 참고 URL : http://wiki.gurubee.net/display/LECTURE/04.Annotation-based+Controller
3. ModelAndView
//메소드를 사용한 방법 ModelAndView mv = new ModelAndView(); mv.setViewName("emp/list"); mv.addObject("list", list); return mv; //생성자를 사용한 방법 return new ModelAndView("emp/list", "list",list); //redirect 설정 return new ModelAndView("redirect:/emp/list.do");
문서정보
- 이 문서는 구루비에서 작성하였습니다.
- 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 출처 : http://wiki.gurubee.net/pages/viewpage.action?pageId=26740988&
- 구루비 지식창고의 모든 문서는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.
'차근차근 > Spring' 카테고리의 다른 글
@SuppressWarnings (0) | 2015.06.15 |
---|---|
@Autowired 와 @Resource (0) | 2015.06.15 |
Maven으로 Spring MVC 실습하기 (0) | 2015.06.04 |
게시판만들기 (0) | 2015.06.02 |
server tomcat v7.0 server at localhost failed to start. 3 (0) | 2015.06.02 |