开发手册 欢迎您!
软件开发者资料库

Spring MVC - 多动作控制器示例

Spring MVC多动作控制器示例 - 从简单和简单的步骤学习Java Spring Framework 4.1.6版,从基本概念到高级概念,包括概述,环境设置,控制反转(IoC),依赖注入,bean范围,bean生命周期,内部bean,自动装配,不同模块,面向方面编程(AOP),数据库访问(JDBC),事务管理,Web MVC框架,Web流,异常处理,EJB集成和发送电子邮件等。

以下示例说明如何使用Spring Web MVC框架使用Multi Action Controller. MultiActionController 类有助于分别在单个控制器中映射多个URL及其方法.

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("home");      model.addObject("message", "Home");      return model;   }   public ModelAndView add(HttpServletRequest request,      HttpServletResponse response) throws Exception {      ModelAndView model = new ModelAndView("user");      model.addObject("message", "Add");      return model;   }   public ModelAndView remove(HttpServletRequest request,      HttpServletResponse response) throws Exception {      ModelAndView model = new ModelAndView("user");      model.addObject("message", "Remove");      return model;   }} 

例如,使用上述配置,如果URI :

  • /home.htm被请求,DispatcherServlet会将请求转发给UserController home()方法.

  • 请求user/add.htm,DispatcherServlet会将请求转发给UserController add()方法.

  • user/remove请求.htm,DispatcherServlet会将请求转发给UserController remove()方法.

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

Step描述
1在com.IT包下创建名为 TestWeb 的项目如Spring MVC中所解释的那样 -  Hello World ch apter.
2创建Java类UserController在com.it1352包下.
3在jsp子文件夹下创建视图文件home.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("home");      model.addObject("message", "Home");      return model;   }   public ModelAndView add(HttpServletRequest request,      HttpServletResponse response) throws Exception {      ModelAndView model = new ModelAndView("user");      model.addObject("message", "Add");      return model;   }   public ModelAndView remove(HttpServletRequest request,      HttpServletResponse response) throws Exception {      ModelAndView model = new ModelAndView("user");      model.addObject("message", "Remove");      return model;   }}

TestWeb-servlet.xml

                                

home.jsp

<%@ page contentType = "text/html; charset = UTF-8" %>               Home               Add 
      Remove   

user.jsp

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

${message}

     

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

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

Spring Multi Action Controller 1

尝试URL http://localhost:8080/TestWeb/user/add .htm 如果弹出Web应用程序一切正常,我们将看到以下屏幕.

弹簧多动作控制器2