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

广告位

以下示例显示如何使用Spring Web MVC框架来实现多动作控制器的可参数化视图控制器。可参数化视图允许将…

以下示例显示如何使用Spring Web MVC框架来实现多动作控制器的可参数化视图控制器。可参数化视图允许将请求映射到网页。

所下所示配置 –

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;     }   }  

URL映射配置文件如下 –

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

例如,使用上面的配置,如果URI:

  • 对于/index.html请求,DispatcherServlet会将请求转发到UserController控制器,并将viewName设置为index.jsp

首先,让我们使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态表单的Web应用程序:

  1. 创建一个名称为 ParameterizableViewController 的动态WEB项目。
  2. com.yiibai.springmvc 包下创建一个Java类UserController
  3. jsp子文件夹下创建一个视图文件:index.jsp
  4. 最后一步是创建所有源和配置文件的内容并运行应用程序,详细如下所述。

完整的项目文件目录结构如下所示 –

UserController.java 的代码如下所示 –

package com.yiibai.springmvc;  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;     }  }  

ParameterizableViewController-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.html=userController           </value>        </property>     </bean>     <bean id="userController" class="org.springframework.web.servlet.mvc.ParameterizableViewController">        <property name="viewName" value="index"/>     </bean>  </beans>  

index.jsp 的代码如下所示 –

<%@ page contentType="text/html; charset=UTF-8" %>  <html>  <head>  <title>index.jsp Page</title>  </head>  <body>     <h2>This is index.jsp page.</h2>    </body>  </html>  

完成创建源和配置文件后,发布应用程序到Tomcat服务器。

现在启动Tomcat服务器,当访问URL => , 如果Spring Web应用程序没有问题,应该看到以下结果:

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

  

拾荒的老头

关于作者: 拾荒的老头

为您推荐