论文部分内容阅读
一、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