基于JavaEE5的Web应用框架研究与实践

上传人:汽*** 文档编号:513899717 上传时间:2023-09-28 格式:DOC 页数:16 大小:826KB
返回 下载 相关 举报
基于JavaEE5的Web应用框架研究与实践_第1页
第1页 / 共16页
基于JavaEE5的Web应用框架研究与实践_第2页
第2页 / 共16页
基于JavaEE5的Web应用框架研究与实践_第3页
第3页 / 共16页
基于JavaEE5的Web应用框架研究与实践_第4页
第4页 / 共16页
基于JavaEE5的Web应用框架研究与实践_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《基于JavaEE5的Web应用框架研究与实践》由会员分享,可在线阅读,更多相关《基于JavaEE5的Web应用框架研究与实践(16页珍藏版)》请在金锄头文库上搜索。

1、基T Java EE 5的Web应用框架研究与实践发过程。最大限度地重用已存系统的各种资源是软件再工程的最重要特点之一。 它将逆向工程、重构和正向工程组合起来,将现存软件系统重新构造为适应新的 应用需要的新系统。开放系统技术 开放系统321技术是在系统的丌发中使用接口标准同时使用符合接口标准的实现。当前以解决异构环境中的互操作为目标的分布对象技术是开放系统技术中的 主流技术。该技术使得符合接口标准的构件可以方便地以即插即用的方式组装到 系统中,实现黑盒复用。CASE技术CASE是一种智能化计算机辅助软件工程I:量I:t331。随着软件工程思想的日益深入人一tl,以计算机辅助开 发软件为目标的C

2、ASE技术越来越为众多的软件开发人员所接受,CASE工具和 CASE环境得到越来越广泛的应用。CASE工具的已成为保证软件质量,解决软件危机的主要手段。 软件复用同样需要CASE技术的支持。CASE技术中与软件复用相关的主要研究内容包括:在面向复用的软件开发中,可复用构件的抽取、描述、分类和存储: 在基于复用的软件开发中,可复用构件的检索、提取和组装;可复用构件的度量 等。CASE技术与软件复用技术相关的主要研究内容包括:在面向复用的软件开发 中,可复用构件的抽取、描述、分类和存储;在基于复用的软件开发中,可复用 构件的检索、提取、组装及度量等。软件过程 软件过程341又称软件生存周期过程,是

3、软件生存周期内为达到一定目标而必须实施的一系列相关过程的集合。一个良好定义的软件过程对软件丌发的质量和 效率有着重要影响。非技术因素非技术因素包括机构组织、管理方法、开发人员的知识更新、知识产权、标准化问题等等。 / 第2章关于软件复用技术与框架技术的研究22框架技术221框架的概念框架技术351是为了解决传统Web丌发中的问题而产生的。框架实际上就是一 种软件复用技术。框架是整个或部分系统的可重用设计,表现为一组 抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定 制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。可以说,一个框架是一个可复用的设计构件,它规定了

4、应用的体系结构,阐 明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽 象类以及其实例之间协作的方法,它为构件复用提供了上下文关系。因此 构件库的大规模重用也需要框架。采用框架技术进行软件开发的优势主要包括36:1使领域内的软件结构具有一致性;2使系统具有良好的扩展性和开放性;3提高代码复用率,使软件生产率和质量得到提高;4使软件设计人员专注于对领域的了解,使需求分析更充分;5存储了经验,可以让那些经验丰富的人员去设计框架和领域构件,而不必限于底层编程;6允许采用快速原型技术;7有利于在一个项目内多人协同工作;8粗粒度的重用使得平均丌发费用降低,开发速度加快,开发人员减少,

5、维护 费用降低,而参数化框架使得适应性、灵活性增强。222框架的分类近年来随着软件复用研究的深入,框架技术也日益受到人们的重视。目前, 框架技术也得到较大发展,出现了很多优秀的框架。根据框架应用的主要特点可 分为以下四种37:1表示层框架表示层框架主要解决系统中与用户交互的部分,负责MVC设计模式中的视图 层,实现用户提交和获取数据的界面。主流的表示层框架有Strutsl、Struts2、JSF、基于Java髓5的Web应用框架研究与实践webwork、Tapestry。2持久层框架目前数据库市场主要被关系型数据库所占领,因此持久层框架的主要工作集 中在如何简化程序对关系型数据库的操作上。被广

6、泛采纳的持久层框架主要有 Hibernate和iBATIS。3容器类框架 容器类框架的功能类似于E容器,为运行在其上的业务对象提供生命周期管理,事务支持等。目前较为成熟的此类框架有Spring、HiveMind、PicoContainer以及国内自主研发的Jdon Framework。4安全层框架安全层框架负责为系统提供安全认证、访问控制等安全服务,使开发者专注于业务功能需求。流行的安全控制框架有:Ace百、SeraphYale CAS、Gabriel。223当前主流框架介绍目前比较流行的Web应用框架有:StrutsStruts381是Apache基金会Jalana项目组Open Sourc

7、e 目,它采用MVC模式,是全世界第一个MVC框架。它将MVC模式分离显示逻辑和业务逻辑的 能力发挥得淋漓尽致。Struts框架的核心是一个弹性的控制层,基于如Java Servlets、JavaBeans、ResourceBundl与XML等标准技术,以及Jakarta Commons 的一些类库。Struts有一组相互协作的类、Serlvet以及Jsp tag lib组成。基于Struts构架的Web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。腑6WorkW曲Wbrk刚来自另外一个优秀的开源组织:opensymphony。相比Stmtsl

8、,WebWork更加优秀。它采用了一种更加松耦合的设计,让系统的Action不再与 Servlet API耦合,使单元测试更加方便,允许系统从BS风格向CS风格转换。 Action无需与w曲wbrk耦合,代码重用率高。支持更多的表现层技术,有更好的 适应性。Struts2第2章关于软件复用技术与框架技术的研究Struts2401整合了两个优秀的MVC框架:Struts和WebWork。Struts2是在 WebWork基础上发展起来的,因此稳定性、性能等各方面都有很好的保证。同时 还保留了Strutsl的简单易用性,Strusts2框架诞生后,完全取代了Struts和Webwork 框架,成为

9、MVC领域最流行的框架。SpringSpring411是为了简化企业级开发而诞生的轻量级J2EE开发框架。它是实现控 制反转容器、非侵入性的框架,并提供面向方面编程 思想的实现方式,提供对持久层、事务的支持,提供MVC Web框架的实现,并对一些常用的企业服务API提供一致的模型封装。同时,Spnng不是一个强制性框架,可以选择某个组件独立使用。除此之外,对于 现存的各种框架,Spring也提供了与他们相整合的方案。 概括地说,Spring是一个轻量级的控制反转和面向方面的容器框架。HibernateHibernate42是当前比较流行的OR Mapping框架,出身于SourceForget

10、net社 区。它是针对Java语言创建的用于持久化存储的最优秀的引擎之一。它处于应用 程序和数据库之间,为应用程序提供持久化对象到数据库的服务。Hibernate框架对数据库表结构提供了有力的封装,以OR Mapping实现了 POJO和数据库表之间的映射,并在框架中由Hibernate完成SQL语句的运行。一 般只要定义好POJO到数据库表的映射关系,即可通过Hibernate提供的方法完成 持久层的操作。使用Hibernate框架可以减少使用JDBC API的需要。它支持所有 主流的SQL数据库管理系统,提供数据恢复和更新的工具、事务管理、数据连接池、Programmatic And De

11、clarative Queries声明实体关系管理等功能。iBATISOR Mapping框架的新贵,现已成为Apache开源组织的子项目。iBATIS框架 以POJO与SQL语句之间的映射来完成持久层的工作。iBATIS框架不像Hibernate 自行生成SQL语句来运行,具体的SQL需要程序员编写,然后通过映射配置文件, 将SQL所需的参数,以及返回的结果字段映射到指定POJO。iBATIS以SQL开发 的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。上述框架都很优秀,而且也在实际的软件开发中发挥了重要的作用,但其仅基于Java旺5的Web应用框架研究与实践仅是针对某一层次

12、应用的框架。而且这些框架大多侧重于低层技术细节的封装, 功能还不是很完善,可操作性方面也存在不足,复用粒度也比较小。只用其中的 一个框架难以全面的提高Web开发的效率。因此,如何设计一个框架,能够将各 种框架的优点结合起来,成为一个亟待解决的问题。为了能够更好的设计Web应 用框架,本人对Web应用体系结构进行了研究。第3章关于Web应用体系结构的研究第3章关于Web应用体系结构的研究31软件体系结构软件体系结构又称软件构件结构SCI或软 件架构,是对软件系统整体结构的刻画。软件体系结构是软件工程继过程性模型 和面向对象模型之后的最新模型。软件体系结构研究如何应用可复用构件系统快 速可靠地对系

13、统进行构造,着重于软件系统自身的整体结构和构件间的互连与通信。软件体系结构是关于软件在系统级层次上的组成和行为,是设计过程中不可 缺少的一个阶段,它对复杂软件的后期设计起到了决定性的作用。虽然软件体系结构已经在软件工程领域中有着广泛的应用,但迄今为止还没 有一个被大家所公认的定义。许多专家学者从不同角度和不同侧面对软件体系结 构进行了刻画,较为典型的定义有43:Dewayne Perry和Alex Wolf曾这样定义:软件体系结构是具有一定形式的 结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负 责对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组组合

14、连接起来。这一定义注重区分处理构件、数据构件和连接构件,这一方法 在其他的定义和方法中基本上得到保持。Mary Shaw和David Garlan认为软件体系结构是软件设计过程中的一个层 次,这一层次超越计算过程中的算法设计和数据结构设计。体系结构问题包括总 体组织和全局控制、通讯协议、同步、数据存取,给设计元素分配特定功能,设 计元素的组织,规模和性能,在各设计方案问进行选择等。软件体系结构处理算 法与数据结构之上关于整体系统结构设计和描述方面的一些问题,如全局组织和 全局控制结构、关于通讯、同步与数据存取的协议,设计构件功能定义,物理分 布与合成,设计方案的选择、评估与实现等。Kruchte指出,软件体系结构有四个角度,它们从不同方面对系统进行描 述:概念角度描述系统的主要构件及它们之间的关系:模块角度包含功能分解与 层次结构;运行角度描述了一个系统的动态结构;代码角度描述了各种代码和库 函数在开发环境中的组织。基于Java EE 5的Web应用框架研究与实践Hayes Roth则认为软件体系结构是一个抽象的系统规范,主要包括用其行 为来描述的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号