-
스프링(Spring) ModelAndViewSpring(스프링) 2015. 5. 10. 21:52반응형
ModelAndView
● Controller 처리 결과 후 응답할 view와 view에 전달할 값을 저장
● 생성자
- ModelAndView(String viewName) : 응답할 view 설정
- ModelAndView(String viewName, Map values) : 응답할 view와 view로 전달할 값들을 저장한
Map 객체
- ModelAndView(String viewName, String name, Object value) : 응답할 view 이름,
view로 넘길 객체의 name-value
● 주요 메소드
메소드
내용
setViewName(String view)
응답할 view 이름을 설정
addObject(String name, Object value)
view에 전달할 값을 설정
addAllObject(Map values)
view에 전달할 값을 Map에 name-value로 저장하여 한번에 설정
Spring MVC의 구성 및 실행 흐름
다른 MVC 기반의 프레임워크와 마찬가지로 Spring MVC도 컨트롤러를 사용하여 클라이언트의 요청을 처리하게 된다. 이 컨트롤러의 역할을 하는 것이 DispatcherServlet인데, DispatcherServlet을 비롯하여 Spring MVC의 주요 구성 요소는 표 1과 같다.구성 요소 설명 DispatcherServlet 클라이언트의 요청을 전달받는다. Controller에게 클라이언트의 요청을 전달하고, Controller가 리턴한 결과값을 View에 전달하여 알맞은 응답을 생성하도록 한다. HandlerMapping 클라이언트의 요청 URL을 어떤 Controller가 처리할지를 결정한다. Controller 클라이언트의 요청을 처리한 뒤, 그 결과를 DispatcherServlet에 알려준다. 스트러츠의 Action과 동일한 역할을 수행한다. ViewResolver Commander의 처리 결과를 보여줄 View를 결정한다. View Commander의 처리 결과를 보여줄 응답을 생성한다. ModelAndView 흐름
DispatcherServlet 설정 및 스프링 컨텍스트 설정
● webxml(자바 웹 어플리케이션 설정파일)에 DipathcerServlet 설정 및 공통으로 사용할
어플리케이션 컨텍스트 설정
● <servlet> 태그를 이용하여 DispatcherServlet 설정
● <servlet-mapping> 태그를 이용하여 요청 URL 패턴 설정
123456789101112131415<!--?xml version="1.0" encoding="UTF-8"?-->
<!-- web.xml -->
<
web-app
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns
=
"http://java.sun.com/xml/ns/javaee"
xsi:schemalocation
=
"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id
=
"WebApp_ID"
version
=
"3.0"
>
<
display-name
>SpringBlog2</
display-name
>
<
servlet
>
<
servlet-name
>dispatcher</
servlet-name
>
<
servlet-class
>org.springframework.web.servlet.DispatcherServlet</
servlet-class
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>dispatcher</
servlet-name
>
<
url-pattern
>*.do</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
반응형'Spring(스프링)' 카테고리의 다른 글
스프링 viewResolver (0) 2015.09.25 스프링 @ResponseBody 어노테이션 (0) 2015.09.15 스프링 DI(Dependency Injection) 개념 및 설정 방법!! (1) 2015.07.05 스프링 필터 설정(캐릭터 인코딩) (0) 2015.06.03 스프링(Spring) @어노테이션 - 작성중!! (0) 2015.05.10