Spring MVC - 可参数化的视图控制器示例

以下示例说明如何使用Spring Web MVC框架使用Multi Action Controller的Parameterizable View Controller方法.可参数化视图允许使用请求映射网页.

package com.it1352; 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

public class UserController extends MultiActionController{
	
   public ModelAndView home(HttpServletRequest request,
      HttpServletResponse response) throws Exception {
      ModelAndView model = new ModelAndView("user");
      model.addObject("message", "Home");
      return model;
   } 
}


 <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
   <property name="mappings">
      <value>
         index.htm=userController
      </value>
   </property>
</bean>
<bean id="userController" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
   <property name="viewName" value="user"/>
</bean>

例如,使用上述配置,如果是URI.

    首先,让我们使用一个可用的Eclipse IDE,并坚持以下步骤,使用Spring Web Framework开发基于动态表单的Web应用程序.

    StepDescription
    1创建一个名为TestWeb的项目打包com.it1352,如Spring MVC中所述 -  Hello World章节.
    2在com.it1352包下创建一个Java类UserController.
    3在jsp子文件夹下创建一个视图文件user.jsp.
    4最后一步是创建源文件和配置文件的内容并导出申请如下所述.

    UserController.java

    package com.it1352; 
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
    
    public class UserController extends MultiActionController{
    	
       public ModelAndView home(HttpServletRequest request,
          HttpServletResponse response) throws Exception {
          ModelAndView model = new ModelAndView("user");
          model.addObject("message", "Home");
          return model;
       }
    }

    TestWeb-servlet.xml

    <beans xmlns = "http://www.springframework.org/schema/beans"
       xmlns:context = "http://www.springframework.org/schema/context"
       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-3.0.xsd
       http://www.springframework.org/schema/context 
       http://www.springframework.org/schema/context/spring-context-3.0.xsd">
    
       <bean class = "org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name = "prefix" value = "/WEB-INF/jsp/"/>
          <property name = "suffix" value = ".jsp"/>
       </bean>
    
       <bean class = "org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
          <property name = "mappings">
             <value>
                index.htm = userController
             </value>
          </property>
       </bean>
       <bean id = "userController" class = "org.springframework.web.servlet.mvc.ParameterizableViewController">
          <property name = "viewName" value="user"/>
       </bean>
    </beans>

    user.jsp

    <%@ page contentType="text/html; charset=UTF-8" %>
    <html>
       <head>
          <title>Hello World</title>
       </head>
       <body>
          <h2>Hello World</h2>  
       </body>
    </html>

    完成创建源文件和配置文件后,导出应用程序.右键单击您的应用程序,使用 Export →  WAR文件选项并将 TestWeb.war 文件保存在Tomcat的webapps文件夹中.

    现在,启动Tomcat服务器并确保能够使用标准浏览器从webapps文件夹访问其他网页.现在,尝试一个URL  -   http://localhost:8080/TestWeb/index.htm ,如果Spring Web Application的一切正常,您将看到以下屏幕.

    Spring多动作控制器