一种javaweb应用中srus框架的缺陷与改进_第1页
一种javaweb应用中srus框架的缺陷与改进_第2页
一种javaweb应用中srus框架的缺陷与改进_第3页
一种javaweb应用中srus框架的缺陷与改进_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种javaweb应用中srus框架的缺陷与改进

0本文改进方案的内容在web应用程序体系结构的发展过程中,它主要经历了两个重要的阶段:模型1和模型2。在Model1中,JSP页面访问Web层的JavaBeans,然后通过超链接或请求参数转向下一个页面。在Model1中控制权分散于各页面。这不利于开发人员的合作和程序的维护。因此产生了Model2。Model2是一种抽象的设计思路,它把应用划分为三层模型-视图-控制器。这种思路的实现难度较大,而MVC应用框架可降低实现它的难度。MVC应用框架很多,其中Struts框架是较流行的。本文分析了Struts框架的缺点,提出了Struts框架的改进方案。它大量采用XML、Xpath、XSL等技术和Struts框架,而不再使用JSP,同时将Struts中的FormBean、Session等需要显示的内容映射成XML内容,在XSL(表现层)中通过XSLT、Xpath技术访问,从而保证了XSL(表现层)中不再需要任何Java代码。真正实现了MVC的承诺。1控制层的结构应用框架为Web应用的开发提供了抽象类,我们可以扩展这些抽象类来处理请求。Struts中请求的处理通常由Servlet(控制器)完成。它从客户端接收请求,然后将请求转发给相应的应用模块。图1显示了Struts组件是如何一起工作的。Struts中的视图部分主要是由JSP组成。模型是以一个或多个Bean的形式存在,它主要处理应用的业务逻辑。由于业务逻辑取决于Web应用的功能,所以Struts框架未实现Model。控制器从客户端(通常指客户端浏览器)接收请求,然后将请求转发给相应的业务逻辑处理,最后把处理结果发送给客户端。在Struts中,控制器层主要组件是ActionServlet,它是Servlet的子类。当应用初始化时,ActionServlet根据配置文件(struts-config.xml)加载其他的控制层对象。Struts配置文件中定义了应用的映射关系,ActionServlet根据映射关系把HTTP请求路由到框架中的其他组件。通常,请求首先被转发给一个ActionBean(行为类)然后再到JSP。虽然Struts/JSP较之其他模式有许多优势,但它也存在着一些缺点和不足:程序员可以把应用逻辑放入JSP。遇到问题时,开发人员可以很快地加以修改,经验表明这实际上是陷阱。程序结构很容易变得复杂和难以管理。JSP不能很好地支持XML,也就不能保证生成的结果文档(XML或HTML)将会是100%“格式良好”的。开发人员需要学习如何使用Struts的标志库。事实上要理解这些Struts的标志库,特别是Bean和HTML标志库的确要花费比较长的时间。开发人员不能在视图中用JSP来实现处理管道。只能做些简单的include和forward,这样很明显就会限制视图的灵活性。对JSP页面的任何修改都会导致JSP的重新编译,这样是非常耗费时间的。2strutss的改进2.1xlat、服务于xtst的struts框架设计为了弥补Struts的不足,本文提出了一种新的方案,它采用XML、Xpath、XSL等技术和Struts框架,而不再使用JSP,同时将Struts中的FormBean、Session等需要显示的内容映射成XML内容,在XSL(表现层)中通过XSLT、Xpath技术访问,从而保证了XSL(表现层)中不再需要任何Java代码。图2展示了改进的Struts框架设计的核心构成。从图2可以看出,改进的Struts框架处理流程的最初部分和Struts的类似。不同的地方在于:改进的Struts用一个XSLServlet配合XSLT样式表实现了原来在Struts中由JSP实现的视图部分。这个XSLServlet首先根据Bean和上下文环境生成XML文档,然后调用XSLT进行转换。由于我们可以把一个请求提交给任何一个已经在Struts配置文件中注册的URL,所以在这个过程中不用对Struts作任何的修改。2.2生成wp文件改进的Struts框架的设计核心是XSLServlet类的实现。本文提供了一种实现方案如图3所示。XSLServlet首先调用类DocumentBuilder的方法获取XML文档。XML文档的生成方法有很多,它们都有各自的优点,可以用基本的Java类创建,也可以依赖于某些强大的类库。本方案用JDOM产生XML文档。然后XSLServlet调用Transformer类中的方法实现XML文档的转换。2.3struts框架的主要优点(1)支持一些扩展XML文件流根据模式和上下文环境而生成,样式表对XML文件流再进行加工。虽然一些XSLT转换器可以支持一些扩展,通过这些扩展可以在样式表中调用Java或是其他类型的语言。但这些扩展往往缺乏移植性,而且使用起来比较麻烦。这样就不能再把业务逻辑放入到XSL样式表。(2)抽样数据的选取Xpath是一种强大的表达式语言,用来从XML流中抽取数据。XSLT使用了W3C标准语言,不但提供了Struts标签库类似的功能,而且还提供了Struts没有的功能,比如XSLT支持的函数和递归。(3)对网格化的struts自动存储资源本地化水平和目标语言的复杂程度会影响到了页面的布局。Struts开发人员通常把所有的文本信息和图像资源的链接根据不同的地区保存到一起。根据用户的地区,Struts就会调用适当的资源。改进的Struts通过自动把资源存储到DOM中,然后把他们传递给视图。DOM树包括了从FormBean生成的动态内容,可以轻松地用XPath在XSLT样式表中访问资源。应用的国际化不再通过Java资源捆绑技术实现,而是通过纯XML技术根据用户当前的地区动态地切换样式表来实现。(4)xllt转换目前,IE5/6、Mozilla这样的浏览器已经能够在客户端执行XSLT转换。如果要减轻Web服务器的负担,可以在客户端执行XSLT转换。(5)系统接口设计改进的Struts架构的一个重要特性就是能够动态改变输出的内容类型以及用户接口的风格。比方说,同样的应用项目可以针对新老版本的浏览器生成相应的代码。利用XSLT可以方便地获得各种输出格式:XHTML、XSL/FO、WML、简单的文本、CSV、PDF、SVG等等。3基于效率的办公系统架构智能大厦是通过对建筑结构、系统、服务和管理等要素进行分析后,设计的一种投资少、效率高的舒适温馨又便利的场所。从功能上讲,它又被称为“三A”大厦,即CA(通信自动化)、OA(办公自动化)和BA(楼宇管理自动化)。OA系统使人们借助Internet更快地获得更多的多媒体信息,最大限度地提高办公效率和改进办公质量,缩短办公周期,减少和避免各种差错,提高管理和决策的科学水平。系统架构图如图4所示。系统功能:(1)人事、财务模块它包括人事管理、考勤管理及薪资管理。财务管理的功能主要是基于会计核算的数据,再加以分析,从而进行相应的预测,管理和控制活动。它侧重于财务计划、控制、分析和预测。(2)领导办公模块该模块主要包括公文管理、文档管理、总经理查询管理、本行业国内外商情管理。(3)管理模块该模块主要包括酒店管理、客房管理、停车场管理、大厦运行管理。(4)商场模块该模块主要包括商场POS管理、商品供销存管理、舞厅健身管理。(5)公共服务模块该模块主要包括交通时刻表与订票管理、顾客综合服务管理、游览观光服务管理、娱乐服务管理。根据系统需求,考虑到开发的效率、维护的可能性以及扩展的方便性,我们采用了改进的Struts框架。使得页面设计者和程序开发者更好地协调工作,从而提高应用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论