Spring5官方文档18W

辽宁白癜风医院 http://m.39.net/baidianfeng/a_4753196.html
18.1SpringWebMVC框架的介绍

SpringWeb模型视图控制器(MVC)框架是围绕一个DispatcherServlet设计的,它将请求分派给处理程序,具有可配置的处理程序映射,视图解析,区域设置,本地化和主题解析,并且支持上传文件。默认的处理是基于注解

Controller和

RequestMapping,提供一系列灵活的处理方法。随着Spring3.0的推出,通过

PathVariable或者其他注解,

Controller机制开始允许你去创建Rest风格的web站点和应用。

在SpringWebMVC和Spring中一条关键的准则是“对扩展开放,对修改关闭”

在SpringWebMVC中一些核心类的方法被标注为final,由于开发者不能用自已的方法去覆盖这些方法,这并不是任意的,而是特别考虑到这个原则。

对于这个准则的解释,请参考SethLadd的ExpertSpringWebMVC和WebFlow;具体参见第一版第页的“ALookAtDesign”一节。或者参见

BobMartin,TheOpen-ClosedPrinciple(PDF)

当你使用SpringMVC时,你不能在final方法增加切面。例如,你不能在AbstractController.setSynchronizeOnSession()增加切面,有关AOP代理的更多信息以及为什么不能再Final方法增加切面,查看第7.6.1节“了解AOP代理”。

在SpringWebMVC中,您可以使用任何对象作为命令或表单支持对象;你不需要实现一个特别架构接口或者基类。Spring数据绑定非常灵活:例如,你可以使用程序将类型不匹配当作验证错误而不是系统错误。因此,您不需要将您的业务对象的属性复制为简单的无格式的字符串,仅用于处理无效提交,或者正确转换字符串。相反,通常最好直接绑定到您的业务对象。

Spring的视图处理也是相当灵活,控制器通常负责准备具有数据和选择视图名称的模型映射,但它也可以直接写入响应流并完成请求。视图名称解析可通过文件扩展或Accept标头内容类型协商进行高度配置,通过bean名称,属性文件或甚至自定义的ViewResolver实现。模型(MVC中的M)是一个Map接口,可以完全提取视图技术,你可以直接与基于模板的渲染技术(如JSP和FreeMarker)集成,或直接生成XML,JSON,Atom和许多其他类型的内容。模型Map可以简单地转换成适当的格式,如JSP请求属性或FreeMarker模板模型。

18.1.1SpringWebMVC的特点

SpringWeb流程

SpringWeb流程(SWF)的目的是成为最好的Web页面应用流程管理方案,SWF与Servlet和Portlet环境中的SpringMVC和JSF等现有框架集成。如果你有一个这样的业务流程,使用会话模型比纯粹的请求要优,那么SWF可能是一个选择。

SWF允许您将逻辑页面流作为在不同情况下可重用的自包含模块捕获,因此非常适合构建引导用户通过驱动业务流程的受控导航的Web应用程序模块。

更多关于SWF的信息,


转载请注明:http://www.soiphoto.com/sjyd/sjyd/18250.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了