Spring MVC - hyunwoo-e/Spring GitHub Wiki
- 클라이언트의 HTTP 요청
- DispatcherServlet에 의해 요청이 가로채짐
- Handler Mapping을 통해 컨트롤러를 찾음
- DispatcherServlet은 해당 컨트롤러에 처리를 위임
- 컨트롤러는 처리 결과를 DispatcherServlet으로 반환
- DispatcherServlet은 클라이언트에 View를 응답
클라이언트의 요청을 받아 요청을 처리할 컨트롤러에 처리를 위임, 컨트롤러의 처리 결과를 클라이언트에 제공한다. DispatcherServlet 설정방법은 아래와 같다.
- web.xml
스프링에서는 설정파일을 xml로 작성한다.
- ContextLoaderListener 등록
스프링에서 설정파일을 읽기 위해서 ContextLoaderListener가 필요하다.
- ContextConfigLocation 등록
ContextLoaderListener가 읽을 설정파일의 위치를 ContextConfigLocation에 지정한다.
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>[servlet-name]</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</init-param>
</servlet>
- dispatcher-servlet.xml
- 사용자 요청을 처리할 Controller
- 사용자에게 보여줄 화면을 찾는 ViewResolver
<mvc:annotation-driven></mvc:annotation-driven>
<context:component-scan base-package="[package-name]"/>
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <!--JSTL 사용-->
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>