




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中南大学CentralSouthUniversity本科毕业设计英文文献翻译 题 目 学生姓名 学 号 指导教师 学 院 专业班级 二一六 年 一 月 八 日 Spring 的 web MVC 构架模式 Juergen Hoeller1、 介绍: Spring 的应用构架 当你第一次看到并接触Spring框架的时候,你一定会在心里想到;“哦哦,不不,这又是另一种Web构架”。这篇文章将会指出Spring框架不是什么特殊的web框架,而是一个通用的轻量级的应用程序框架,在专用网络支持下的应用程序框架。并且它会告诉你Spring框架明显区别于其他轻量级application framework,它将专注于web的支持,与struts和webwork有着明显的区别。在和struts和webwork的对比上之中,Spring框架是一个服务于所有层面上的application framework:提供了bean的配置基础,AOP的支持,JDBC的提取框架,抽象事务支持,等等诸如此类。它有一个非常显著的特点:在某个层面上如果你不需要Spring的支持,它有一个非常显著的特点:在某个层面上如果你不需要Spring的支持,你就可以不使用Spring框架的class(类),只使用它的某一部分的功能。从它的设计理念,你可以看到Spring框架帮助你实现了真正的逻辑层和web层的成功分离:例如:一个校验应用将不用依靠controllers,就可以实现。这样的目标是更好的重用和易测:过分依靠不必要的容器和框架将不能实现这一点。当然,Spring的自己本身的web支持和通常框架模式的细致完整。然而,Spring替换struts,webwork或者其他的web方案非常的容易。这个对于Spring的web支持或者不同的地方,Spring允许你在web容器里面建立一个中间层,在测试环境或者标准独立的应用里面来设置重用你的商务逻辑。还有就是在J2EE环境里面,可以让你你的商务逻辑不必依靠容器提供的服务,就比如像JTA,EJB的支持。良好的框架的一个web应用是可以运行在任何容器上,就比如,Tomcat或者Resin这些容器。值得注意的事,Spring不是和已经存在的解决方案进行竞争的关系。我们鼓励结合标准的技术,如Servlet,JSP,JTA,JNDI,JDBC和JDO,和其他非常匹配的工具,比方如Hibernate,Velocity,Log4J,和Cauchos Hessian/Burlap这类工具。这个框架的设计思想是你的应用处在需要改良的时候,你将可以对其做一些技术的选择:例如,如果你需要分布式事务处理,你可能需要用Spring框架的JTA Transaction Manager 来实现JTA服务。或者,用DataSourceTranscactionM anager 或者 HibernateTransction Manager 来实现美妙完美的单个数据库交换。2、 Web MVC:Spring web框架的设计思想Spring网络框架通过配置操作mappings可配置的处理程序,展示resolution,本地化和模板集成围绕着分派请求操作的servlet -DispatcherServlet分派请求处理程序,可配置的处理程序映射,决议,决议和语言环境和主题设计的。缺省的操作是一个非常简单的控制器接口,他只是提供了一个“ModelAndView handleRequest(request请求,response响应)”的方法。这已经可以将它应用于一个应用的程序控制器,但是,如果你想包含多个层次的控制 ,Abstract Controlerr,AbstractCommand Controllers,MultiAction Controllers,SimpleForm Controllers,AbstractWizardForm Controller将帮助你完成,应用程序控制器将代表那些子系统通常是子类。注意,你可以选择一个适当的基类:如果你没有web form(网络形式),你就不必用 Form Controller。这便就是和Struts最大的不同区别了。你可以把任何物体作为命令或者形式对象来操作任何对象:这就可以不需要接口工具或者一个基础类的驱动。Spring的数据绑定是非常的高度灵活的。举例来说,对待类型不匹配的验证错误,他描述了具有在应用范围内的校验错误的输入机制,但不是系统错误。所以在你的形式对象里面你大可不需要复制你的业务对象的Spring框架中的属性作为字符串表单对象,就能够处理无效的提交,或将字符串。相反,它通常比直接绑定到您的业务对象。这是另一个主要区别Struts是建立在需要基类行动和ActionForm对任何类型的行动。只需要操作出错的子任务,或者适当的转换spring框架。换句话来说,他通常可以很好的字节绑定你的业务对象。这也是和Struts围绕请求基础类Action和ActionForm(每个action操作类型)建立主要的不同之一。对比WebWork(网络系统),Spring框架更多的区别在于对象角色:Spring框架支持控制器的概念,一个可选的操作命令或者表单对象,得到数据并传递给视图的模式这个模型。这个模式通常包含命令和表单对象,但有时也包含任意的参考数据。换句话来说,相反一个webwork aciton(网络系统动作) 联合了所有这些角色到单独的对象中。网络系统不允许你用已经存在的业务对象作为你f表单的一部分,但是只生成各自相关Action操作类的bean属性。最后,相同的操作请求的aciotn操作实例在一个视图里面获得赋值和形成人口集群。因此,引用数据需要模仿作为行动的bean属性。这些可以说是太多的角色在一个对象中。然而,参考数据也需要作为action的属性被模拟。一个类里面有太多的角色是值得讨论的。关于视图:Spring框架的视图方案非常的灵活。甚至可以编写一个视图控制器实现通过respongse返回ModelAndview对象的null值,就可以直接写到一个视图。在通常的状况下,一个ModelAndView实例结合了一个view(视图名称)和一个model Map(模型地图),包含了bean 名称和相应的通讯对象(像命令或者形式,参考数据,等等)。视图名称解析是非常高端的配置,不是通过bean名称 ,一个propertiese 文件,就是通过你自己的ViewResolver来实现的。这个抽象的model Map(模型映射)允许你在视图层面完成提取视图,没有任何的争辩麻烦:JSP ,速度,或者其他,每一种渲染器都可以直接完整集成使用。这个model Map(模型映射)还可以简单转化得到适当的格式化数据的转换,像JSP请求属性或者Velocity模板模式。3、 集成:用Spring一个不同web框架许多开发团队将为他们已有的项目或者新的项目已经获得的期限和工具进行投资。这里没有像Struts那样大量的图书和工具,但是同样我们又大量的拥有Spring开发技巧的开发人员。然而,如果你愿意生活在Strust的构架瑕疵中的话,它仍然是一种可行的选择web层而他将会是你在web层开发不错的选择。当然,其他应用也是一样。如果你不想Spring框架的web MVC,但是又想借用Spring框架嫁接其他的解决方案,你可以非常简单的通过Spring框架来继承你自己的web框架。你可以非常简单的通过Context LoaderListener启动一个Spring root application context,并且,通过Struts 或者网络系统的action,利用Servletcontext属性(或者Spring的helper方法)存取它。值得注意的事,这里没有任何的”plugings”被调用,因此没有专门的集成:来自web层的视图,你可以简单的将Spring作为一个管理application context 实例入口点的类库。所有你注册的bean和Spring框架的服务都可以在不需要Spring框架的web MVC的情况下都可以被你轻松掌握。Spring不是和Struts,Webwork这些应用进行竞争,他将作为一个纯web框架应用于很多领域,它解决了许多领域,纯web框架不从bean配置数据访问和事务处理。因为它不需要配置数据存储和事务操作。所以,你可以利用Spring提供的中间层和数据存储层来丰富你的应用,甚至,你只是想用JDBC或者Hibernate进行事务抽象。4、 特点核对列表如果聚焦于web支持,Spring框架的一些显著特点是:清楚的角色分离:controller,validator,command object,form object,model object和 Dispatcher Servlet,handler mapping vs view resolver,等等。强大而且直接简单的框架和作为javaBean的应用配置,包括简单的参照和应用程序上下文引用内容,例如,从web控制器到业务对象和数据校验器。适应性,外挂:无论使用什么样的控制器你都需要得到替代Action/ActionForm所做的每件事情的方案(简单,命令,form,范例,多重action,或者定制一个)重用业务逻辑代码,而不是源于Action/ ActionForm一切。不需要复制:你可以用已经有的业务逻辑对象作为命令或者form对象代替反射特定的actionform子类。可以定制的绑定和数据校验:作为应用级的输入机制的错误校验,固定日期和数字绑定,定制绑定和验证:类型不匹配,应用程序级验证错误,使违规值,本地化的日期和号码绑定等代替String-on
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年家教笔试题及早教师答案
- 2025年航空器件维修工程师执业资格考试试题及答案解析
- 2025年国际商务律师专业资格认证考试试题及答案解析
- 2025年电子商务运营专员职业技术考核试卷及答案解析
- 课件专利申请流程及费用
- 教学课件评语大全初中版
- 课件《水浒传》教学课件
- 2025年安全管理考试题库与答案系统
- 机电城消防知识培训总结课件
- 2025年工业生产自动化工程师技能鉴定考试试题及答案解析
- 劳动仲裁申请书模板2
- 胺碘酮静脉炎护理
- 护理工作中的人文关怀
- 产品放行控制程序
- 【开学第一课】七年级新生主题班会:踏上青春路 启航正当时 课件
- 超限梁板模板工程专项施工方案
- 军事理论-综合版2078612-知到答案、智慧树答案
- 2024年甘肃白银有色集团股份有限公司招聘笔试参考题库含答案解析
- 2024年特殊作业理论考试试题及答案
- 《个案研究法》课件
- 低压电工作业第六章电力线路
评论
0/150
提交评论