第十一章 MVC模式的一种实现.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十一章 MVC模式的一种实现

第十一章 MVC模式的一种实现 ——Struts2框架 Struts框架 本讲内容 MVC模式 理解框架与容器 Struts框架 Struts2开发实例 经典MVC模式与Web应用程序中的MVC模式 MVC模式(经典的单机中的MVC模式) MVC模式设法减少可复用的域模型与显示代码之间的联系。它通过在显示层与域对象之间引入一个控制器来实现。 控制器处理来自显示层的事件,并将事件映射为域模型的改动。 控制器通过注册显示层以获得域模型被改动的通知,从而令显示层能被更新。 经典MVC模式与Web应用程序中的MVC模式 经典MVC模式落伍了 在Web世界中,经典MVC模式落伍了。 在Web世界中,视图是在客户端浏览器中生成的,而控制器和模型则在服务器端。 经典MVC模式在HTTP和HTML世界中是行不通的,使用HTTP请求/响应模式的Web应用程序需要一个与经典MVC模式截然不同的设计,这个设计借用了经典MVC模式的名字和一些方式。 经典MVC模式与Web应用程序中的MVC模式 经典MVC模式落伍了(续) 在Web版的MVC中,视图不能直接调用控制器,但是可以基于web请求映射成不同的URL。 视图不是一个可被更新的对象,而是在客户端发出新请求的时候随之重新呈现的Web页面。 模型也不能将自身的改变通知视图,因为视图呈现在另一台机器的用户浏览器中。因此视图每次都要依据必威体育精装版的数据重新生成。 经典MVC模式与Web应用程序中的MVC模式 经典MVC模式的更新:前端控制器(Front Controller) 在Web世界中MVC应用程序是通过使用前端控制器实现的。 该模式包含一个分发器(在Java的web MVC实现中,使用Servlet 来实现分发器)。 分发器将URL请求映射成需要执行的命令实例(command instance,它是action- Struts的基本要素)。 action与系统后端的服务(服务组合成模型)进行交互。 命令实例处理完业务逻辑后返回一个码值,码值映射到一个视图。 最后,结合控制器和模型,视图呈现给用户。 通常视图会使用标签库,以便更简单地访问数据。 Struts2概述 Struts2是现今最流行的Web框架之一,是一个优越的框架。 Struts2的设计基于这样一个基本原理:完成通用的任务应该是简单的,而构建高级的设计应该是可行的。 Struts2的开发者只想提供一个能够为你工作的框架,而不是与你作对的框架。 Struts2是MVC模式的一个实现,让系统的核心业务代码与表示层分离。 Struts2概述 从根本上讲,Struts2是一个MVC框架,同时它也是一个轻量级容器。 什么是框架? 什么是框架? 框架,即framework。其实就是某种应用的半成品,就是一组组件,供开发系统使用,它们相互协作实现某一功能或行为。而且,框架一般是成熟的,不断升级的软件。 什么是框架? “框架的强大之处不是源自它能让你做什么,而是它不能让你做什么。”(Rickard)。 Rickard解释框架为:框架使混乱的东西变得结构化。 Web应用程序框架则鼓励开发人员使用一系列框架所提供的基础类和类库,从而避免杂乱的JSP所造成的混乱。 一种完美的中间状态 框架是在结构和创造力之间的一个精确的天平。 由于框架要求更多的结构,使创造力所发挥的空间开始收缩了。 一个极端是框架消失了,一片混乱;另一个极端是框架流给你的选择是如此之少,以至于你无法完成你的应用程序。 一种完美的中间状态 一种完美的中间状态处于这两个极端之间的某一处,这种状态就是现在的Struts和所有其它MVC模式所梦寐以求的。 一个好的框架提供了具体的特性来限制开发者能够做什么,但同时很细致地提供尽可能多的选择。这要求有经验的开发者做很多很小却十分聪明的选择。 WebWork,即现在的Struts2提供了两者最好的折中。 容器能够做什么 Java运行环境中包括四种类型应用程序的组件,Java EE产品必须支持这些组件。 Java容器是为相应类型的应用程序组件提供所需服务的运行时环境。 同种类型的不同产品容器在很多方面有差异,如成本、性能和支持等。一个容器的关键是为了装入相应的程序并为代码提供特有的特性。 一个容器拥有越多有用的特性,则该容器就越好。 Struts2的轻量级容器 Servlet容器提供了规范要求的特性,或者说提供了容器开发者所实现的特性。其它Java EE容器也是如此。 轻量级容器则不同,它允许为一个基本的容器增加新的特性,使其符合特定应用程序的要求。 比如,要为程序员提供简单的事务支持,但是不要用EJB,则可以将事务支持特性加入到轻量级容器中,使装入容器的项目受益。 总结 Struts2除了是一个MVC框架之外,还是一个小巧的轻量级容器。让你

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档