在 SPRing 系列 的第 3 部分中,我介绍 Spring MVC 框架。就像在以前的文章中一样,我用银行示例介绍如何建模和构建简单的应用程序。示例应用程序包含了已经学过的一些技术(例如依靠注入),但是主要演示 Spring MVC 的特性。
在开始之前,请 下载这篇文章的源代码。请参阅 参考资料 访问 Spring 框架和 Tomcat 5.0,运行示例需要它们。
Spring MVC 框架
Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 javaServer Pages(jsp)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更轻易进行定制。
Spring 的 Web MVC 框架是围绕 DispatcherServlet 设计的,它把请求分派给处理程序,同时带有可配置的处理程序映射、视图解析、本地语言、主题解析以及上载文件支持。默认的处理程序是非常简单的 Controller 接口,只有一个方法 ModelAndView handleRequest(request, response)。Spring 提供了一个控制器层次结构,可以派生子类。假如应用程序需要处理用户输入表单,那么可以继续 AbstractFormController。假如需要把多页输入处理到一个表单,那么可以继续 AbstractWizardFormController。
示例应用程序有助于直观地学习这些特性。银行应用程序答应用户检索他们的帐户信息。在构建银行应用程序的过程中,可以学到如何配置 Spring MVC 框架和实现框架的视图层,视图层包括 JSTL 标记(用于显示输出的数据)和JavaServer Pages 技术。
配置 Spring MVC
要开始构建示例应用程序,请配置 Spring MVC 的 DispatcherServlet。请在 web.xml 文件中注册所有配置。清单 1 显示了如何配置 sampleBankingServlet。
接下来,下载示例代码 并释放到驱动器(例如 c:/ )上。创建了 Spring 项目的文件夹之后,打开它并把 spring-banking 子文件夹拷贝到 c:/tomvat5.0/webapps。spring-banking 文件夹是一个 Web 档案,里面包含 Spring MVC 示例应用程序。lib 文件夹包含应用程序需要的 Spring 框架、与Spring 相关的 MVC 库以及 JSTL 标记库和 jar 文件。
要启动 Tomcat 服务器,请使用以下命令:
cd bin C:/Tomcat 5.0/bin> catalina.bat start Tomcat 应当启动并部署 Spring MVC 示例应用程序。