資源描述:
《flex整合spring》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、摘要:RichInternetApplication(RIA)技術(shù)的涌現(xiàn)解決了表示層的限制。這篇文章實(shí)實(shí)在在地介紹了什么是RIA,怎么把RIA集成到你自己的系統(tǒng)結(jié)構(gòu)中去。并且將識(shí)別當(dāng)跟一些現(xiàn)在普遍的公開(kāi)的框架結(jié)合時(shí)所存在的潛在的挑戰(zhàn)?,F(xiàn)今我們用J2.EE服務(wù)器開(kāi)發(fā)互聯(lián)網(wǎng)應(yīng)用,通常包括一個(gè)表示層譬如Struts,Tapestry,WebWork,orSpring。這些工具一般按照Model-View-Controller(MVC)結(jié)構(gòu)并以HTML的形式輸出到瀏覽器。Web開(kāi)發(fā)典型的編程模式是允許用戶在應(yīng)用中為每一次action
2、向一個(gè)應(yīng)用服務(wù)器發(fā)布請(qǐng)求。為每次action用戶發(fā)出請(qǐng)求,服務(wù)器會(huì)生成一個(gè)新的應(yīng)答,這個(gè)應(yīng)答允許用戶為了更多信息遞交一個(gè)新請(qǐng)求。瀏覽器一般被用作提交給用戶的用戶界面。但是,瀏覽器是瘦客戶機(jī),它有影響擴(kuò)展和終端用戶體驗(yàn)的局限性。RichInternetApplication(RIA)技術(shù)的涌現(xiàn)解決了表示層的限制。這篇文章實(shí)實(shí)在在地介紹了什么是RIA,怎么把RIA集成到你自己的系統(tǒng)結(jié)構(gòu)中去。并且將識(shí)別當(dāng)跟一些現(xiàn)在普遍的公開(kāi)的框架結(jié)合時(shí)所存在的潛在的挑戰(zhàn)。瀏覽器的局限性那么當(dāng)前的解決方法有什么問(wèn)題嗎?如果應(yīng)用程序運(yùn)轉(zhuǎn)正確且允許用戶
3、是有生產(chǎn)力的,那么可能沒(méi)什么錯(cuò)誤。但是曾經(jīng)有很多web開(kāi)發(fā)員抱怨當(dāng)使用瀏覽器作為客戶機(jī)時(shí)會(huì)限制性能。這是一些當(dāng)前開(kāi)發(fā)web應(yīng)用程序時(shí)遇到的問(wèn)題:1.瀏覽器以不一致的方式解釋scripting語(yǔ)言,譬如Java語(yǔ)言。這迫使開(kāi)發(fā)員多次寫(xiě)同樣的代碼來(lái)調(diào)節(jié)各個(gè)瀏覽器。2.簡(jiǎn)單用戶接口會(huì)影響到譬如選中,基于向?qū)У谋韱?和大表格數(shù)據(jù)集的處理,這使得在瀏覽器上需要更多額外的代碼。3.HTML是有限的,靜態(tài)的標(biāo)記語(yǔ)言是無(wú)法是擴(kuò)展的。4.在用戶接口之內(nèi)進(jìn)行事件處理可能是富挑戰(zhàn)性的。因?yàn)楸环答伒腍TML頁(yè)一次只能被顯示一頁(yè),而事件沒(méi)有回到服務(wù)器
4、之前又是無(wú)法更新其它頁(yè)的。5.只能通過(guò)Cookie來(lái)達(dá)到連續(xù)的應(yīng)用狀態(tài),Cookie它是不支持對(duì)象的。6.使用瀏覽器開(kāi)發(fā)偶爾連接的客戶機(jī)幾乎是不可能。很多Web開(kāi)發(fā)員都知道這個(gè)事實(shí):當(dāng)前工具設(shè)置有局限性。當(dāng)在瀏覽器上工作時(shí)開(kāi)發(fā)員必須查找解決方法。對(duì)于開(kāi)發(fā)員和用戶來(lái)說(shuō)用一臺(tái)瘦客戶機(jī)是承受不了當(dāng)前的性能的。RichInternetApplications為了克服這些局限性,考慮用RIA來(lái)開(kāi)發(fā)。如今RIA給用戶一臺(tái)胖客戶機(jī)來(lái)擴(kuò)展瀏覽器所承受不了的性能。最普遍應(yīng)用的J2.EE的RIA客戶機(jī)是Java和Flash。當(dāng)開(kāi)發(fā)大型的數(shù)據(jù)中心
5、的應(yīng)用程序時(shí),RIAs真的是很強(qiáng)的。開(kāi)發(fā)RIA的幾個(gè)可行方法是JDNC(JDesktopNetworkComponents),Laszlo,Thinlet,JavaWebStart,和MacromediaFlex。RIA能解決問(wèn)題前面已經(jīng)說(shuō)過(guò)了。下面是RIAs的一些特征:1.????????RIAs提供了和瀏覽器一樣的UI組件,而且它還提供新的本地的更加豐富的組件。比如包括一個(gè)數(shù)字步進(jìn),滑動(dòng)控制,一個(gè)軸向數(shù)據(jù)網(wǎng)格要素和菜單欄。2.????????成熟的RIA應(yīng)用允許布局管理器由如下構(gòu)成,譬如制表符瀏覽器,折疊,樹(shù)結(jié)構(gòu)和其它能
6、和AWTandSwing開(kāi)發(fā)相媲美的布局控制。3.????????RIAs提供拖放能力。4.????????RIA里的語(yǔ)言是一致的,它貫穿于所有客戶機(jī),不必為不同的實(shí)施而重寫(xiě)。5.????????在用戶接口,不必每個(gè)action都是請(qǐng)求/回應(yīng)模式。通過(guò)富互聯(lián)網(wǎng)應(yīng)用,用戶與UI相互對(duì)話,如果需要也只需要向服務(wù)器發(fā)出請(qǐng)求。RIAs會(huì)運(yùn)用HTTP協(xié)議方法把數(shù)據(jù)提交給應(yīng)用服務(wù)器。但是,通常更好的用RIAs的機(jī)制是遠(yuǎn)程,它會(huì)根據(jù)RIA來(lái)支持不同的方式。RIAs提供擴(kuò)展的與HTTP進(jìn)行通訊的協(xié)議。6.????????事件處理橫跨多個(gè)組件
7、是可能的。7.????????RIAs允許您不使用HttpSession就可以在客戶機(jī)存儲(chǔ)更多信息。這減少了在應(yīng)用服務(wù)器里所占的內(nèi)存。8.????????狀態(tài)的連續(xù)廣播,通常是以對(duì)象的形式,它提供了創(chuàng)建偶爾連接的客戶機(jī)的可能性。RIA是相當(dāng)新的技術(shù),它介紹了開(kāi)發(fā)時(shí)涉及到的應(yīng)用。它不能解決所有應(yīng)用,它是要依賴某種實(shí)現(xiàn)。但是,如果您認(rèn)為您的應(yīng)用可受益于一個(gè)更加富有的UI設(shè)計(jì),那么RIA也許就可以為您服務(wù)。本文現(xiàn)在將集中于一個(gè)RIA解決方法,MacromediaFlex,并且集中討論一下。MacromediaFlexMacrome
8、diaFlex是RIA的一臺(tái)商業(yè)表示層服務(wù)器。因?yàn)檫@是Flexapplications.用的環(huán)境,所以必需要安裝Flash插件。多數(shù)瀏覽器已經(jīng)裝備了Flash插件,對(duì)于RIA來(lái)說(shuō)這也有助于正當(dāng)使用Flex。我們來(lái)討論一下不用Java插件而使用Flash插件來(lái)與J2.EE應(yīng)用服務(wù)器通話的意義