MVC设计模式的原理与实现

被引量 : 0次 | 上传用户:mainoracle
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
一、MVC设计模式MVC英文即Model-View-Controller ,是一种目前广泛流行的软件设计模式。近来,随着J2EE的成熟,它正在成为在J2EE平台上推荐的一种设计模型,也是广大Java开发者非常感兴趣的设计模型。随着网络应用的快速增加,MVC模式对于Web应用的开发无疑是一种非常先进的设计思想,无论选择哪种语言,无论应用多复杂,它都能为理解分析应用模型时提供最基本的分析方法,为构造产品提供清晰的设计框架,为软件工程提供规范的依据。所谓MVC模式,指的是一种划分系统功能的方法,是为那些需要为同样的数据提供多个视图的应用程序而设计的,它很好地实现了数据层与表示层的分离,特别适用于开发与用户图形界面有关的应用程序。它把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层和控制层。MVC设计模式的基本结构定义为:控制器,用来处理用户命令以及程序事件;模型,维护数据并提供数据访问方法;视图,数据的显示。二、Struts框架MVC本身就是一个非常复杂的系统,所以采用MVC实现Web应用时,最好选一个现成的MVC框架,在此之下进行开发,从而取得事半功倍的效果。现在有很多可供使用的MVC框架,由于Struts有完整的文档并且相对来讲比较简单,所以用它开发基于MVC设计模式的系统还是比较方便的。Struts的目标是为利用Java技术开发基于MVC模式的Web应用提供一个标准模式,它的应用范围极广,可以用在不同的项目,不同的行业。Struts是一个高度可配置、高度扩展性的框架,人们几乎可以用它开发任何能想到的使用Java技术的Web应用。由于Struts已经提供了一个非常好的MVC框架,利用Struts开发MVC系统时可以大大加快开发的速度。三、S-Build框架S-Build是参与吉林省中通科技股份有限公司开发的项目“吉粮集团OA(Office Automation)系统”时项目组合作开发的一个基于MVC的整体框架,“S”是取“结构”的英文单词structure的首字母,Build是取其英文原意“建造”。S-Build是基于MVC设计模式的原理开发的一个框架,它具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的Web应用程序的开发。S-Build清晰地区分了控制、事务逻辑和视图,从而简化了开发应用程序的过程。S-Build提供的类使得开发工作更加简单,这些类包括:1、控制程序流程的类;2、实现和执行程序事务逻辑的类;3、其他一些类。S-Build依靠Java servlet和JSP等J2EE技术开发而成,使用XML文件作为配置文件。通过基于标准的技术,“填空式”的软件开发方法,S-Build可以减轻在创建新项目时的令人抱怨的极费时间的工作。 <WP=79>S-Build框架的基础由六个包组成,分别是TControl包、TDataSet包、Parlor包、Business包、XMLFile包和ExceptionFile包。开发时把它分成了六个工程,除此之外再加上四个XML配置文件:action-config.xml、view-config.xml、global-config.xml和error-config.xml以及前台JSP页面。S-Build框架的TControl包控制导航流,Business包用来封装业务逻辑类,所有业务逻辑类都继承Parlor包中的TParlorBase类并重写该类的ExecOPT()方法。当TControl包中的MainControl接收到一个请求,它使用jspname和以B_开头的按钮名称来决定哪一个业务逻辑类将用来处理请求。MainControl将输入数据保存到TDataSet对象中,TDataSet对象还用来存放查询数据库取得的结果,整个请求的业务流程所传递的数据流都保存在这个TDataSet对象中。所有对XML配置文件的操作都封装在XMLFile包中,XMLFile包中的类负责对四个配置文件的读操作以及设置全局路径等等。此外,还有处理异常的ExceptionFile包,处理程序运行当中的错误及异常。所有这些细节,关于jspname、按钮名称、错误信息、全局参数(IP和数据源),以及业务逻辑类的名称,都在四个XML配置文件中存储。MainControl在启动时读取这四个配置文件,运行时,S-Build根据对配置文件的查找结果实例化业务逻辑类并创建对象。四、使用S-Build框架开发OAOA是Office Automation的英文缩写,翻译过来就是办公自动化。本文开发的这个OA是基于浏览器的OA,即B/S结构的OA,适合使用S-Build框架进行开发。整个OA系统以S-Build为整体框架,充分发挥了MVC设计模式的优点,使得软件系统的框架结构在日后升级、扩展相关功能时能够更加快捷、方便。五、Struts与S-Build比较本文分别介绍了Struts和S-Build的基本原理及它们的组件、应用开发等,Struts和S-Build都是基于MVC设计模式的框架,它们有很多的共同点,开发应用系统时所遵循的过程也大体相同。同时,它们也各有各的特点,在使用它们开发应用程序时各有利弊。综上所述,MVC设计模式的原理及实现过程具有较高的研究价值,也具有无限的发展前景,它可以应用于很多领域开发Web项目。使用MVC设计模式有助于提高代码的可重用性和灵活性,通过将问题划分为更小的组件,当技术空间或问题空间中出现变化时,就有更多的机会重用代码。此外,MVC设计模式可以使前台网页设计人员和后台业务逻辑类开发人员能将精力集中于自己最擅长的方面。Struts和S-Build
其他文献
在基本把握生猪产业发展脉络和前沿的基础上,基于SCP范式,本文梳理了相关文献,从市场结构、市场行为和市场绩效三个方面对中国生猪产业发展进行了深入思考,旨在为今后的相关
目的利用垂直冲击电镀装置制备机械研磨电镀铜镀层。方法在普通酸性镀铜液中分别加入玻璃球、铜球、铅球,在垂直冲击电镀装置振幅为4 mm、频率为12 Hz的情况下制备30μm的铜
房颤是最常见的心律失常之一,发生率仅次于室性早搏。其潜在的危险在于可导致动脉系统尤其是脑动脉发生血栓栓塞事件(缺血性脑卒中),是房颤致死及致残的主要因素。华法令是唯一可
2013年,面对国内外错综复杂的经济金融形势,福建省把握稳中求进的总基调,全面实施"三规划两方案①",坚持统筹稳增长、调结构、促改革、惠民生,全力推进科学发展跨越发展,持续
法律适用问题一直是国际私法中争论最多的问题,正如美国学者比尔所说:冲突法中没有哪个问题比处理合同准据法问题更为错综复杂。意思自治原则经过几个世纪的沿革,不仅发展地相对
2014年末,福建与广东、天津共同列为第二批自由贸易试验区试点,这是中央在新时期支持福建加快发展的重大举措。加快建成闽台区域深度融合、投资贸易便利、产业优势突出、服务
随着全球化的不断深入,英语作为跨文化交际的主要载体,在世界范围内各个领域的应用日益增多。这种趋势迫使英语教学领域需要更多合格的英语教师。在现有的教师队伍中,不是以英语
针对传统不间断电源(UPS)整机控制策略存在切换条件覆盖面不足、难以追溯问题根源,以及传统的开发方法开发周期长、效率低等问题,采用分层设计方法设计不间断电源控制系统结
今年10月25日,是中国人民志愿军参加抗美援朝战争出国作战60周年纪念日。在抗美援朝战争中,中国人民志愿军战胜了以美国为首的“联合国军”16国部队,加上南朝鲜共17国部队,震
企业市场营销资源的有效配置就是将企业的营销资源在各品牌之间以及广告、销售促进和人员推销等营销要素间进行合理的分配,从而使有限的资源产生最大的经济效益。企业市场营销