1 / 18
文档名称:

SSH Web开发架构分析和实现.doc

格式:doc   页数:18页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

SSH Web开发架构分析和实现.doc

上传人:wxbdoc4 2013/7/20 文件大小:0 KB

下载得到文件列表

SSH Web开发架构分析和实现.doc

相关文档

文档介绍

文档介绍:SSH Web开发架构分析和实现
摘要:对当前Web应用程序开发面临的问题,结合目前比较流行的开源框架SSH(Spring、Struts、Hibernate),具体讨论其基本相似性及有关基本概念,提出了一种开发J2EE Web应用的轻量级解决方案,以帮助开发人员在短期内搭建结构清晰、可复用性好、可扩展性好、维护方便的Web应用程序。并通过案例具体说明如何将这一方案应用到实际项目中。
关键词:框架,J2EE,MVC,SSH,Struts,Spring,Hibernate
大型企业级Web应用系统的开发通常要求有一个良好的软件架构、便于协作开发和扩展升级,而传统的开发模式不能很好地满足这些要求。本文对当前Web应用程序开发面临的问题,结合目前比较流行的开源框架SSH(Spring、Struts、Hibernate),具体讨论其基本相似性及有关基本概念,提出了一种开发J2EE Web应用的轻量级解决方案,以帮助开发人员在短期内搭建结构清晰、可复用性好、可扩展性好、维护方便的Web应用程序。并通过案例具体说明如何将这一方案应用到实际项目中。
1、SSH框架介绍和分析

著名的软件大师Ralph Johnson对框架(Framework)进行了如下的定义: 框架是整个系统或系统的一部分的可重用设计,由一组抽象的类及其实例间的相互作用方式组成。
框架一般具有即插即用的可重用性、成熟的稳定性以及良好的团队协作性。J2EE复杂的多层结构决定了大型的J2EE项目需要运用框架和设计模式来控制软件质量。目前,市场上出现了一些商业的、开源的基于J2EE的应用框架,其中主流的框架技术有:基于MVC模式的Struts框架、基于IoC模式的Spring框架以及对象/关系映射框架Hibernate等。

所有现代的网络开发框架几乎都遵循了模型-视图-控制(MVC)设计模式:商业逻辑和描述被分开,由一个逻辑流控制器来协调来自客户端的请求和服务器上将采取的行动。这条途径成为了网络开发的事实上的标准。每个框架的内在的机制当然是不同的,但是开发者们使用来设计和实现他们的Web应用软件的API是很类似的。差别还存在于每个框架提供的扩展方面,例如标签库,JavaBean包装器等。
所有的框架使用不同的技术来协调在Web应用程序之内的导航,例如XML配制文件,java属性文件或定制属性。所有的框架在控制器模块实现的方法方面也存在明显的不同。例如,EJB可能实例化在每个请求中需要的类或使用Java反射动态地调用一个适当的行为(Action)类。另外,不同框架在各自引入的概念上也有所不同。例如,一个框架可能定义用户请求和反应场所,而另外一个框架可能仅仅定义一个完整的流
:从一个请求到多个响答和随后的再请求。
各种Java框架在它们组织数据流的方法方面是很类似的。在请求发出后,在应用程序服务器上产生一些行动;而作为响应,一些可能包含对象集的数据总是被发送到WEB层。然后从那些对象:可能是有setter和getter方法的简单类、JAVABEANS、值对象、或者一些集合对象中提取数据。现代的Java框架还想方设法简化开发者的开发任务,如通过使用简易的API、数据库连接池、甚至数据库调用包等提供自动化的追踪方式来实现。一些框架或者能够钩进(hooked into)另外的J2EE技术中,例如JMS(Java消息服务)或JMX,或把这些技术集成到一起。服务器数据持续性和日志也有可能成为框架的一部分。
MVC模式
MVC模式是一个用于将用户界面逻辑与业务逻辑分离开来的基础设计模式,它将数据处理、界面以及用户的行为控制分为:Model(模型)-View(视图)-Controller(控制器)。
Model:负责当前应用的数据获取与变更及相关的业务逻辑。可用JAVABEAN来体现;
View:负责显示信息。可以使用JSP、VELOCITY模板等技术;
Controller:负责收集转化用户的输入。常用一个SERVLET来实现;
View和Controller都依赖于Model,但是Model既不依赖于View,也不依赖于Controller,这是分离的主要优点之一,这样Model可以单独的建立和测试以便于代码复用,View和Controller只需要Model提供数据,它们不会知道、也不会关心数据是存储在SQL Server还是Oracle数据库中或者别的什么地方。
WEB层框架Struts
Struts是一个在JSP Model2基础上实现的MVC框架,其主要的设计理念是通过控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性及可重用性。Struts框架的体系结构如下图所示: