飞翔的起点

从这里出发

导航

<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

常用链接

留言簿(5)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜

WebWork和Struts的关系

在学习的过程中,一直对webWork和struts的关系不是很清楚,今天打算从网上找找看看,他们究竟有什么样的区别和联系,
下面是从网上找到的一篇关于他们的文章,写的挺多错的,打算收藏下来。 
首先让我们来了解一下Web框架。
Web框架主流上分为两类:MVC框架和事件响应机制框架。MVC框架有Struts,Webwork,Spring MVC,以及一些基于这些框架的框架,如Spring Webflow, 如基于Struts的Beehive等;事件框架有JSF,Tapestry,Echo等。除此之外,还有一些连接两者的框架,如Struts Shale等。
 
由上面我们知道了Struts和Webwork同为服务于Web的一种MVC框架,下面我们着重说说Struts与WebWork它们各自的发展及它们的关系问题。
Struts的第一个版本是在 2001年5月份发布。它提供了一个Web应用的解决方案,如何让 JSPs 和 servlets 共存去提供清晰的分离视图和业务和应用逻辑的架构。在Struts之前,最通常的做法是在JSP中加入业务和应用逻辑,或者在servlets中生成视图。
 
自从第一个版本的发布, Struts 实际上已成为业界公认的Web应用标准。但随着时间的推移,Web应用框架经常变化的需求,产生了几个下一代 Struts的解决方案。其中两个可选方案是Shale 和 Struts Ti。 Shale 是一个基于构建的框架,并已成为 Apache 中的重要项目。而 Struts Ti 则是继续坚持 MVC模式的基础上改进,继续Struts的成功经验。
 
WebWork项目是在2002年3月发布的,它对Struts式框架进行了革命性改进,引进了不少新的思想,概念和功能,但和原Struts代码并不兼容。WebWork是一个成熟的框架,经过了好几次重大的改进与发布。
 
对于开发人员来说,如此多的框架,过多的选择是一种沉重的负担,不但需要花更多的时间去学习,也需要更多的时间去维护基于不同框架的代码。
 
又由于面临着当时dotnet统一的web框架webforms以及异军突起的rails的强势挑战,Java业界也感受到竞争的丝丝寒意,因此,众多Java Web框架的核心开发人员终坐到了一起,商量着Web框架的统一和互操作的问题。
 
经过一段时间的讨论,Struts,Webwork和beehive三方宣布合并,共同发展下一代MVC模式的MVC框架……Struts Ti。它将主要以Webwork为核心,集成Beehive的annotataion和pageflow功能,推向Struts用户群体,并且加强和JSF的集成能力。
 
在2005年12月,WebWork与Struts Ti决定合拼, 再此同时, Struts Ti 改名为 Struts Action Framework 2.0,成为Struts真正的下一代。
 
之后它们各自官方的说法分别是:WebWork是由OpenSymphony开发的MVC模式的J2EE Web框架。 目前已经捐献给Apache组织继续开发,命名为Struts2;而Struts则说“Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts communities joined forces to create Struts 2.”即大意为“Apache Struts 2即是之前大家所熟知的WebWork 2。在经历了几年的各自发展后,WebWork和Struts社区决定合二为一,也即是Struts 2。”
 
Struts与WebWork都为WEB框架,或多或少都有异同之处,以上只是表面上的一个关系,具体内部的应用将在以后深入学习应用后给出。

posted on 2008-03-18 10:59 forgood 阅读(513) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: