servlet 설정파일에서 설정한 controller를 직접만들어서 운영
============================================================================================================================================
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<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>s_mvc2</display-name>
<servlet>
<servlet-name>test</servlet-name> <!-- test-servlet.xml 파일을 찾게된다. -->
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
============================================================================================================================================
test-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- HandlerMapping : BeanNameUrlHandlerMapping (생략가능)-->
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<!-- Controller : 요번에는 controller를 직접만들어서 운영해보장!!(전에는 스프링에서 제공해주는 ParameterizableViewController class로 운영함 -->
<bean name="/index.do" class="pack.TestController"/> <!-- -->
<!--
TestController class에서
org.springframework.web.servlet.mvc.Controller를 구현(implement)하여
handleRequest 메소드를 오버라이딩해주고 뷰 파일명을 리턴해줌
-->
<!-- ViewResolver : InternalResourceViewResolver -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"/> <!-- controller 리턴값의 앞부분에 붙는 문자열 : 결국 경로라는 이야기 -->
<property name="suffix" value=".jsp"/> <!-- controller 리턴값의 뒷부분에 붙는 문자열 : 결국 확장자라는 이야기 -->
</bean>
</beans>
============================================================================================================================================
Controller
package pack;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class TestController implements Controller{
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
System.out.println("TestController 수행");
//return new ModelAndView("list"); //test-servlet.xml에서 InternalResourceViewResolver bean의 설정값에 의해 list.jsp파일을 찾아서 뷰해줌
ModelAndView view = new ModelAndView();
view.setViewName("list");
view.addObject("say", "모델 수행 결과 값"); //request.setAttribute("say", "모델 수행 결과 값");
return view;
}
}
'spring > Web' 카테고리의 다른 글
AbstractController 를 상속하여 Controller 사용하기 (0) | 2014.05.12 |
---|---|
공유자원 설정할때 사용(ContextLoaderListener : applicationContext.xml) (0) | 2014.05.12 |
여러개의 설정파일 설정하기 (0) | 2014.05.12 |
Annotation을 이용한 Controller 맵핑 (0) | 2014.05.12 |
개념 잡기 (0) | 2014.05.12 |