快速业务通道

Web应用程序模型及其Java实现之第三部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22

Web应用程序模型及其Java实现之第三部分

时间:2010-12-31

第三部分:MVCD模型

在上一节中,从一般的原则上介绍了两种Web应用模型,但是如何理解和把握这样的模型,将不同的Web技术正确应用到Web程序不同的功能模块中是一个非常实际的话题。下面就在实际编程中如何去掌握Web编程模型做一些分析。

1、两层客户/服务器模型

Web应用程序模型及其Java实现之第三部分 - 编程入门网

图11、两层客户/服务器模型

Web应用程序天生是一种客户/服务器应用程序,在ASP(Application Service Provider)逐渐成为Internet应用发展的一个重要方向的时候,使用哪一种编程模型来实现Web应用程序还处于探索之中。上面介绍的微软的DNA结构和Java编程结构就是人们在ASP(Application Service Provider)编程模型上进行探索的结果,但是由于这些技术出现比较新、掌握起来也有一些难度,所以许多编程人员采用了使用ASP或是JSP中嵌入“SQL”来实现数据存取和一些相关逻辑,如图11所示。

这样的编程模型有对一些小型系统比较合适,因为不需要太复杂的技术,技术人员比较好找,实现起来也比较快。但是,这种编程模型缺点还是比较明显的:维护困难、重用困难、大型系统中难以管理。

要解决该模型问题的关键是,将逻辑层抽象出来。但是,在以数据中心编程中,数据库不但提供基本的数据存取功能,而且与SQL丰富的表达能力一起提供强大的逻辑表达能力;再上节介绍的图9、图10所示两种模型掌握起来有一些难度,所以出现了该模型的一个改良版本,如图12所示。

Web应用程序模型及其Java实现之第三部分 - 编程入门网

图12、改良的客户/服务器模型

组成在该改良的模型中,为数据库中的主要的表都建立了一个类,JSP/ASP通过该类实现对数据库表的操作。这个模型一个方面实现了SQL语句封装,方便了程序的维护;另一个方面也提高了系统的重用性,即对Table类的重用。

但是,由于大多数数据库操作都是针对多数据表的操作,如果采用单表的方式来完成逻辑,未免有些浪费数据库与SQL的逻辑功能。另外,由于系统没有实现逻辑层的抽象,不能解决上面提高关键问题。

2、MVC模型的介绍

在传统的面向对象编程中,我们曾经接触过MVC模型,如图12所示。

Web应用程序模型及其Java实现之第三部分 - 编程入门网

图13、MVC模型

Web应用程序模型及其Java实现之第三部分(2)

时间:2010-12-31

在该模型中,应用程序分为三个组成部分:

View: 这是用户界面部分,与Web应用程序一样,主管应用程序与人之间的接口:一个方面它为用户提供了输入手段,并触发应用逻辑运行;另一个方面,它又将逻辑运行的结果以某种形式显示给用户。

Controller: 该部分是用户界面与Model的接口;一个方面它解释来自于view的输入,将其解释成立系统能够理解的对象,同时它也识别用户动作,并将其解释对Model特定方法的调用;另一个方面,它也处理来自于Model的事件和Model逻辑执行的结果,调用适当View为用户提供反馈。

Model: 这是整个模型的核心,它表示的是解决方案空间的真正的逻辑。它采用面向对象的方法,将问题领域中的对象抽象为应用程序对象。在这些抽象的对象中封装了对象的属性和这些对象所隐含的逻辑。

上面所示的编程模型中,在应用程序执行过程中,数据就保存在Model的实例中,也就是保存在内存中。当用户需要保存执行的结果时,将模型中的数据保存为特定格式的文件。在用Java实现模型时,可以直接使用Java对象的Serializable特性来保存对象。这种模型适合一些工具软件的开发,如Case工具或是CAD工具。这些工具软件所具有一个共同特征是模型本身比较复杂、数据量不大而且是单用户单模型实例操作。

Web应用程序有着与工具类应用程序不同的特点:数据量大、多用户并行操着。如果象上面一样采用面向对象模型,则往往是多模型实例同时存在,上面的模型不再适合于这样的Web应用程序。

虽然MVC模型不适用于Web应用,但是它为W

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号