飛翔的起點(diǎn)

          從這里出發(fā)

          導(dǎo)航

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

          統(tǒng)計(jì)

          常用鏈接

          留言簿(5)

          隨筆分類(lèi)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          WebWork和Struts的關(guān)系

          在學(xué)習(xí)的過(guò)程中,一直對(duì)webWork和struts的關(guān)系不是很清楚,今天打算從網(wǎng)上找找看看,他們究竟有什么樣的區(qū)別和聯(lián)系,
          下面是從網(wǎng)上找到的一篇關(guān)于他們的文章,寫(xiě)的挺多錯(cuò)的,打算收藏下來(lái)。 
          首先讓我們來(lái)了解一下Web框架。
          Web框架主流上分為兩類(lèi):MVC框架和事件響應(yīng)機(jī)制框架。MVC框架有Struts,Webwork,Spring MVC,以及一些基于這些框架的框架,如Spring Webflow, 如基于Struts的Beehive等;事件框架有JSF,Tapestry,Echo等。除此之外,還有一些連接兩者的框架,如Struts Shale等。
           
          由上面我們知道了Struts和Webwork同為服務(wù)于Web的一種MVC框架,下面我們著重說(shuō)說(shuō)Struts與WebWork它們各自的發(fā)展及它們的關(guān)系問(wèn)題。
          Struts的第一個(gè)版本是在 2001年5月份發(fā)布。它提供了一個(gè)Web應(yīng)用的解決方案,如何讓 JSPs 和 servlets 共存去提供清晰的分離視圖和業(yè)務(wù)和應(yīng)用邏輯的架構(gòu)。在Struts之前,最通常的做法是在JSP中加入業(yè)務(wù)和應(yīng)用邏輯,或者在servlets中生成視圖。
           
          自從第一個(gè)版本的發(fā)布, Struts 實(shí)際上已成為業(yè)界公認(rèn)的Web應(yīng)用標(biāo)準(zhǔn)。但隨著時(shí)間的推移,Web應(yīng)用框架經(jīng)常變化的需求,產(chǎn)生了幾個(gè)下一代 Struts的解決方案。其中兩個(gè)可選方案是Shale 和 Struts Ti。 Shale 是一個(gè)基于構(gòu)建的框架,并已成為 Apache 中的重要項(xiàng)目。而 Struts Ti 則是繼續(xù)堅(jiān)持 MVC模式的基礎(chǔ)上改進(jìn),繼續(xù)Struts的成功經(jīng)驗(yàn)。
           
          WebWork項(xiàng)目是在2002年3月發(fā)布的,它對(duì)Struts式框架進(jìn)行了革命性改進(jìn),引進(jìn)了不少新的思想,概念和功能,但和原Struts代碼并不兼容。WebWork是一個(gè)成熟的框架,經(jīng)過(guò)了好幾次重大的改進(jìn)與發(fā)布。
           
          對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),如此多的框架,過(guò)多的選擇是一種沉重的負(fù)擔(dān),不但需要花更多的時(shí)間去學(xué)習(xí),也需要更多的時(shí)間去維護(hù)基于不同框架的代碼。
           
          又由于面臨著當(dāng)時(shí)dotnet統(tǒng)一的web框架webforms以及異軍突起的rails的強(qiáng)勢(shì)挑戰(zhàn),Java業(yè)界也感受到競(jìng)爭(zhēng)的絲絲寒意,因此,眾多Java Web框架的核心開(kāi)發(fā)人員終坐到了一起,商量著Web框架的統(tǒng)一和互操作的問(wèn)題。
           
          經(jīng)過(guò)一段時(shí)間的討論,Struts,Webwork和beehive三方宣布合并,共同發(fā)展下一代MVC模式的MVC框架……Struts Ti。它將主要以Webwork為核心,集成Beehive的annotataion和pageflow功能,推向Struts用戶(hù)群體,并且加強(qiáng)和JSF的集成能力。
           
          在2005年12月,WebWork與Struts Ti決定合拼, 再此同時(shí), Struts Ti 改名為 Struts Action Framework 2.0,成為Struts真正的下一代。
           
          之后它們各自官方的說(shuō)法分別是:WebWork是由OpenSymphony開(kāi)發(fā)的MVC模式的J2EE Web框架。 目前已經(jīng)捐獻(xiàn)給Apache組織繼續(xù)開(kāi)發(fā),命名為Struts2;而Struts則說(shuō)“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。在經(jīng)歷了幾年的各自發(fā)展后,WebWork和Struts社區(qū)決定合二為一,也即是Struts 2。”
           
          Struts與WebWork都為WEB框架,或多或少都有異同之處,以上只是表面上的一個(gè)關(guān)系,具體內(nèi)部的應(yīng)用將在以后深入學(xué)習(xí)應(yīng)用后給出。

          posted on 2008-03-18 10:59 forgood 閱讀(517) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 宁南县| 收藏| 株洲县| 舞钢市| 德令哈市| 从化市| 合水县| 舟曲县| 高台县| 安塞县| 巨野县| 长治市| 铜川市| 横山县| 建瓯市| 修水县| 耿马| 临武县| 海原县| 建阳市| 蓬安县| 奇台县| 彭泽县| 长寿区| 辽宁省| 靖边县| 隆化县| 修水县| 京山县| 定边县| 秀山| 大化| 新闻| 疏附县| 航空| 富顺县| 四会市| 衡山县| 莲花县| 张家口市| 唐山市|