posts - 495,  comments - 11,  trackbacks - 0

          作為J2EE開(kāi)發(fā)人員,我們似乎經(jīng)常關(guān)注“后端機(jī)制(backend mechanics)”。我們通常會(huì)忘記,J2EE的主要成功之處在Web應(yīng)用程序方面;許多原因使得人們喜歡利用Web開(kāi)發(fā)應(yīng)用程序,但主要還是因?yàn)槠湟子诓渴鸬奶攸c(diǎn)允許站點(diǎn)以盡可能低的成本擁有上百萬(wàn)的用戶(hù)。遺憾的是,在過(guò)去幾年中,我們?cè)诤蠖送度肓颂嗟臅r(shí)間,而在使我們的Web用戶(hù)界面對(duì)用戶(hù)自然和響應(yīng)靈敏方面卻投入不足。

          本文介紹一種方法,Ajax,使用它可以構(gòu)建更為動(dòng)態(tài)和響應(yīng)更靈敏的Web應(yīng)用程序。該方法的關(guān)鍵在于對(duì)瀏覽器端的JavaScript、DHTML和與服務(wù)器異步通信的組合。本文也演示了啟用這種方法是多么簡(jiǎn)單:利用一個(gè)Ajax框架(指DWR)構(gòu)造一個(gè)應(yīng)用程序,它直接從瀏覽器與后端服務(wù)進(jìn)行通信。如果使用得當(dāng),這種強(qiáng)大的力量可以使應(yīng)用程序更加自然和響應(yīng)靈敏,從而提升用戶(hù)的瀏覽體驗(yàn)。

          該應(yīng)用程序中所使用的示例代碼已打包為單獨(dú)的WAR文件,可供下載。

          簡(jiǎn)介

          術(shù)語(yǔ)Ajax用來(lái)描述一組技術(shù),它使瀏覽器可以為用戶(hù)提供更為自然的瀏覽體驗(yàn)。在Ajax之前,Web站點(diǎn)強(qiáng)制用戶(hù)進(jìn)入提交/等待/重新顯示范例,用戶(hù)的動(dòng)作總是與服務(wù)器的“思考時(shí)間”同步。Ajax提供與服務(wù)器異步通信的能力,從而使用戶(hù)從請(qǐng)求/響應(yīng)的循環(huán)中解脫出來(lái)。借助于Ajax,可以在用戶(hù)單擊按鈕時(shí),使用JavaScript和DHTML立即更新UI,并向服務(wù)器發(fā)出異步請(qǐng)求,以執(zhí)行更新或查詢(xún)數(shù)據(jù)庫(kù)。當(dāng)請(qǐng)求返回時(shí),就可以使用JavaScript和CSS來(lái)相應(yīng)地更新UI,而不是刷新整個(gè)頁(yè)面。最重要的是,用戶(hù)甚至不知道瀏覽器正在與服務(wù)器通信:Web站點(diǎn)看起來(lái)是即時(shí)響應(yīng)的。

          雖然Ajax所需的基礎(chǔ)架構(gòu)已經(jīng)出現(xiàn)了一段時(shí)間,但直到最近異步請(qǐng)求的真正威力才得到利用。能夠擁有一個(gè)響應(yīng)極其靈敏的Web站點(diǎn)確實(shí)激動(dòng)人心,因?yàn)樗罱K允許開(kāi)發(fā)人員和設(shè)計(jì)人員使用標(biāo)準(zhǔn)的HTML/CSS/JavaScript堆棧創(chuàng)建“桌面風(fēng)格的(desktop-like)”可用性。

          通常,在J2EE中,開(kāi)發(fā)人員過(guò)于關(guān)注服務(wù)和持久性層的開(kāi)發(fā),以至于用戶(hù)界面的可用性已經(jīng)落后。在一個(gè)典型的J2EE開(kāi)發(fā)周期中,常常會(huì)聽(tīng)到這樣的話(huà),“我們沒(méi)有可投入U(xiǎn)I的時(shí)間”或“不能用HTML實(shí)現(xiàn)”。但是,以下Web站點(diǎn)證明,這些理由再也站不住腳了:

          posted on 2007-05-02 10:07 jadmin 閱讀(93) 評(píng)論(0)  編輯  收藏

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 正蓝旗| 城固县| 镇坪县| 远安县| 同心县| 乐都县| 彝良县| 合作市| 上高县| 名山县| 镇沅| 浑源县| 海伦市| 双鸭山市| 绥宁县| 东阿县| 宜黄县| 兰西县| 沙湾县| 广西| 合山市| 弋阳县| 石景山区| 四子王旗| 榕江县| 宝清县| 江口县| 新巴尔虎右旗| 成都市| 融水| 营口市| 文登市| 云龙县| 张北县| 正镶白旗| 长乐市| 石门县| 聂拉木县| 棋牌| 肃宁县| 环江|