没有合适的资源?快使用搜索试试~ 我知道了~
首页Spring的web MVC 构架模式
Spring的web MVC 构架模式
需积分: 10 82 浏览量
更新于2023-05-26
评论
收藏 25KB DOC 举报
关于Spring的web MVC 构架模式Spring的web MVC 构架模式
资源详情
资源评论
资源推荐

翻译文稿 1、
Spring 的 web MVC 构架模式
Juergen Hoeller
1.介绍:Spring 应用构架
当你第一次看到 Spring 的时候,你一定会说:"哦不,又一种 web 构架".这篇文章将告诉
你 Spring 明显区别于其他轻量级 application framework, 它将专注于 web 的支持,与
struts 和 webwork 有着明显的区别。
在 和 struts 和 webwork 的 对 比 上 ,Spring 是 一 个 服 务 于 所 有 层 面 的 application
framework:提供了 bean 的配置基础,AOP 的支持,JDBC 的提取框架,抽象事务支持,
等等。它有一个非常显著的特点:在某个层面上如果你不需要 Spring 的支持,你就可以
不使用 String 的 class,只使用它的某一部分的功能。 从它的设计理念,你可以看到
String 帮助你实现了真正的逻辑层和 web 层的分离:例如。一个校验应用将不用依靠
controllers,就可以实现。这样的目标是 更好的重用和易测:过分依靠不必要的容器和
框架将不能实现这一点。
当 然 ,Spring 的 自 己 的 web 支 持 和 通 常 框 架 模 式 的 细 致 完 整 . 然 而 , Spring 替 换
struts,webwork 或者其他的 web 方案非常的容易.对于 Spring 的 web 支持或者不同的
地方,Spring 允许你在 web 容器里面建立一个中间层,在测试环境或者标准独立的应用
里面来设置重用你的商务逻辑.还有在 J2EE 环境里面,你的商务逻辑不必依靠容器提供的
服务,像 JTA ,EJB 的支持.良好的构架的 web 应用可以运行在任何容器上,如,Tomcat
或者 Resin. 值得注意的是,Spring 不是和已经存在的解决方案进行竞争. 我们鼓励结合
标准的技术,如, Servlet, JSP, JTA, JNDI, JDBC, and JDO, 和非常匹配的工具,如,
Hibernate, Velocity, Log4J, and Caucho's Hessian/Burlap.这个框架的的设计思想是
在你的应用需要改良的时候,你将会做一些技术的选择 :例如,如果你需要分布式事务处理,
你 可 能 需 要 用 Spring 的 Jta TransactionManager 来 实 现 JTA 服 务 . 或 者 , 用
DataSourceTransactionManager or HibernateTransactionManager 来实现美妙完
美的单个数据库交换。
2. Web MVC:Spring web 框架的设计思想
Spring 框架通过配置操作 mappings,展示 resolution,本地化和模版集成围绕着分派请求
操作的 servlet - DispatcherServlet 设计的.缺省的操作是一个非常简单的控制接口 , 他
只提供了 ModelAndView handleRequest(request,response)方法.这将用于一个应用
的 控 制 , 但 是 , 如 果 你 想 包 含 多 个 层 次 的 控 制 , AbstractController,
AbstractCommandController, MultiActionController, SimpleFormController,
AbstractWizardFormController 将帮助你完成.应用控制将代表那些子系统.注意,你可
以选择一个适当的基类:如果你没有 web form,你就不必用 FormController.这就是和
Struts 最大的不同. 你可以通过命令或者 form 对象来操作任何对象:这不需要接口工具或
者一个基础类的驱动.Spring 的数据邦定是非常的灵活的.举例来说,它描述了具有在应用范
围内的校验错误的输入机制,但不是系统错误.所以在你的 form 对象里面你不必复制你的业
务对象的 string 属性,只操作出错的子任务,或者适当地转换 string.换句话说,它通常可以
很好的直接邦定你的业务对象. 这也是和 struts 围绕请求基础类 Action 和 ActionForm
(每个 action 操作类型) 建立主要的不同之一. 对比 WebWork,Sping 更多的区别在于对象
角色:Sping 支持控制器的感念,一个操作命令或者 form 对象,和得到数据传递给视图的模
式.这个模式通常包含命令和 form 对象,但有时也包含任意的参考数据.换句话说,一个
WebWork Action 联合所有这些角色到一个单独的对象.WebWork 允许你用已经存在的
业务对象作为你 form 的一部分,但是只生成各自 Action 的 bean 属性. 最后,操作请求的














安全验证
文档复制为VIP权益,开通VIP直接复制

评论0