`
ewenxj1314
  • 浏览: 21462 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

struts与webwork的历史联系

阅读更多
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框架,或多或少都有异同之处,以上只是表面上的一个关系,具体内部的应用将在以后深入学习应用后给出。
3
1
分享到:
评论
2 楼 ewenxj1314 2008-03-18  
有点三国时期的味道了~!这是一种“规律”。
1 楼 ShiningRay 2008-03-18  
合久必分,分久必合

相关推荐

    struts2与webwork2

    在探讨Struts2与WebWork2的联系与区别的过程中,我们不得不提到它们的历史渊源以及在Java Web开发领域中的地位。Struts2框架实际上可以视为WebWork2框架的继承者,两者之间的关系紧密而复杂,下面将从多个角度深入...

    struts与webwork的jar包无冲突版 自定义标签无冲突

    "struts与webwork的jar合并,无冲突版"是一个已经解决了这个问题的定制版本,它将Struts和WebWork的jar包进行了适当的合并和调整,使得在同一个项目中可以安全地使用`s:select`这样的自定义标签,而不会引发解析错误...

    webwork2.1.7

    WebWork 2.1.7 是一个古老的Java Web框架,由Apache软件基金会开发,它在Struts的基础上进行了改进,...尽管现在有更多先进的框架可供选择,但理解WebWork的历史和原理对于成为一位资深的Java Web开发者仍然有价值。

    Struts2中文教程,Struts2API

    “Struts 2权威指南基于WebWork核心的MVC开发(免费阅读1-3章).rar”这本书的前几章可能涵盖了Struts2的历史背景、WebWork与Struts2的关系,以及基本的MVC概念。WebWork是Struts2的前身,理解其工作原理有助于深入...

    struts2综合笔记

    #### 一、Struts2 概述与历史背景 **Struts2** 是一款流行的 Java Web 开发框架,它遵循 MVC (Model-View-Controller) 设计模式,旨在简化 Web 应用程序的开发过程。Struts2 提供了一种统一的方法来构建 Web 应用...

    Struts2 框架概述

    #### 一、Struts2的历史背景与起源 Struts2作为一款备受关注的企业级Web开发框架,在Java Web开发领域占据着举足轻重的地位。尽管Struts2声称自身是一个全新的框架,但从其发展历程来看,这种说法仅仅是从与前一代...

    MVC与Struts简介

    Struts2框架最初是由WebWork框架发展而来的,后来与Struts1框架融合。它使用拦截器机制来处理用户的请求,每个请求都会通过一个或多个拦截器进行处理,然后再转发给Action处理器。 Struts2框架的产生,经历了从...

    webwork in action

    - **历史背景**:WebWork最初由Coyote开源软件公司开发,后来与Struts项目合并为Struts 2,成为Apache Struts的一部分。本书撰写时,WebWork仍作为独立框架存在,拥有独特的设计理念和优势。 - **核心特性**: - ...

    Struts2 技术内幕——深入解析Struts2架构设计与实现原理

    Struts2 构建在WebWork 的技术基础上,它为开发者提供了一套完备的MVC(Model-View-Controller)框架,使得Web层的开发更加结构化和高效。Struts2 的重要性在于其成熟的架构设计和实现原理,使得开发人员能够通过...

    Struts2.1权威指南——基于WebWork核心的MVC开发.pdf

    - **第1章Struts2概述**:介绍Struts2的历史背景、优势以及与其他框架的比较。 - **第2章Struts2下的HelloWorld**:通过一个简单的示例展示如何搭建Struts2环境并运行第一个程序。 - **第3章Struts2基础**:涵盖...

    struts各个版本jar包汇总

    - **合并发展**:Struts 2是Struts 1和WebWork框架的融合,带来了更灵活的架构和更强大的功能。 - **拦截器**:核心设计元素,允许开发者插入自定义逻辑,如验证、事务管理等。 - **表达式语言**:支持OGNL...

    深入浅出struts2

    │深入浅出STRUTS 2 Struts Ti却发现了二者在技术与开发人员这两个层面上的共同之处,不久之后,两个项目就在WebWork的技术基础上进行了合并2。 当我们说起WebWork的时候,我们实际上说的是两个项目——XWork和...

    WebWork深入浅出.rar

    WebWork是一款基于Java的轻量级MVC(Model-View-Controller)框架,它在早期的Web开发中被广泛使用,特别是在Struts框架之后...同时,对于想要了解过去Web开发历史和技术演进的开发者,WebWork也是一个有价值的参考点。

    Struts2学习笔记

    #### Struts的历史与发展 Struts框架的演化经历了几个关键阶段,从最初的Struts1.x,到后来的WebWork,再到现在的Struts2.x,每一次迭代都带来了显著的技术革新和性能提升。 - **Struts1.x**:基于Servlet API,...

    struts2学习文档struts2pdf

    #### 三、Struts2的历史与发展 - **起源**:Struts最初是由程序员Craig R. McClanahan开发的,并于2002年被Apache软件基金会接管。最初的Struts框架(Struts 1)为Java Web应用提供了一个简单的架构,但随着时间的...

    struts2课件

    - **起源与发展:**Struts2起源于2005年底,当时WebWork与StrutsTi宣布合并,后者随后更名为StrutsActionFramework2.0,标志着Struts2正式成为Struts系列框架的继承者和发展方向。 - **设计理念:**Struts2的设计...

    webwork JAR xalan-j_2_7_1-bin-2jars

    WebWork是一个古老的Java Web...同时,随着技术的发展,现代框架如Spring MVC和Struts2已经取代了WebWork,提供了更先进、更健壮的解决方案。然而,理解这种历史遗留问题仍然有助于开发者更好地应对类似的技术挑战。

Global site tag (gtag.js) - Google Analytics