溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Ajax和JSF如何使用Rational Application Developer V7實(shí)現(xiàn)Web應(yīng)用程序

發(fā)布時(shí)間:2021-11-03 15:23:22 來源:億速云 閱讀:117 作者:小新 欄目:編程語言

這篇文章主要介紹了Ajax和JSF如何使用Rational Application Developer V7實(shí)現(xiàn)Web應(yīng)用程序,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

Ajax 的優(yōu)勢和缺點(diǎn)

雖然不是什么革新性創(chuàng)新,Ajax 技術(shù)在近兩年變得非常流行。大量主要 Web 站點(diǎn)(例如 Google、Yahoo!、 Amazon 和 Netflix)使用這一技術(shù)來改善它們網(wǎng)站用戶的訪問體驗(yàn)。事實(shí)上,改進(jìn)用戶體驗(yàn)正是 Ajax 要做的。

在過去十年的 Web 應(yīng)用程序開發(fā)中,用戶與瀏覽器間和瀏覽器與服務(wù)器間的交互是明確界定及顯而易見的:用戶在瀏覽器內(nèi)瀏覽網(wǎng)頁,執(zhí)行操作(從上下文菜單中選擇內(nèi)容,或者選擇一些復(fù)選框),之后通過點(diǎn)擊鏈接或提交按鈕指導(dǎo)瀏覽器與服務(wù)器通信。瀏覽器給服務(wù)器發(fā)送請(qǐng)求并傳遞用戶輸入。服務(wù)器處理請(qǐng)求并返回響應(yīng),返回的可能是更新的頁面或是相同的頁面,總之進(jìn)行了更新。

這樣的 Web 應(yīng)用程序現(xiàn)在被稱為 Web 1.0。 從用戶體驗(yàn)的觀點(diǎn)來看,它們具有兩條缺陷:
◆瀏覽器和服務(wù)器的交互只能由頁面中有限的控件發(fā)起——常常是鏈接和按鈕。這樣就不能在用戶選擇了復(fù)選框(check box)或在組合框(combo box)后迅速通知服務(wù)器。
◆瀏覽器和服務(wù)器的這種交互所造成的后果就是需要更新整個(gè)瀏覽器窗口。這種情況通常很慢,頁面更新往往需要用戶等待很長時(shí)間。更壞的是,當(dāng)同一頁面被重新加載或重新刷新時(shí),經(jīng)常會(huì)在瀏覽器窗口中閃爍。

新一代被稱為 Web 2.0 的 Web 應(yīng)用程序通過利用 Ajax 技術(shù)彌補(bǔ)了這些缺點(diǎn)(也作AJAX,即 Asynchronous JavaScript and XML,異步的 JavaScript 與 XML)。在 Ajax 中,瀏覽器和服務(wù)器的交互發(fā)生在后臺(tái),用戶將不會(huì)覺察。而且它比普通的“瀏覽器 - 服務(wù)器”交互更具針對(duì)性,僅僅需要將頁面的子集發(fā)送給服務(wù)器,并且服務(wù)器僅僅返回所需更新的子集頁面。這種方式所帶來的結(jié)果就是,瀏覽器和服務(wù)器間的通信可被任何事件初始化,例如在組合框或復(fù)選框中進(jìn)行選擇,或鼠標(biāo)指針停留事件等。這樣帶來了很大好處:
◆通信更加迅速,因?yàn)閭鬟f的數(shù)據(jù)更少。
◆用戶停留在同一頁面,因?yàn)椴辉傩枰^多的頁面間導(dǎo)航。
◆重新加載的頁面不會(huì)閃爍,因?yàn)閮H僅是頁面中的一小部分依據(jù) Ajax 請(qǐng)求更新。

Ajax 背后的想法十分簡單:在瀏覽器中監(jiān)聽事件,給服務(wù)器發(fā)送后臺(tái)請(qǐng)求,當(dāng)服務(wù)器響應(yīng)時(shí)更新頁面的一部分。但是實(shí)現(xiàn)過程是非常復(fù)雜的。它需要 JavaScript?,客戶端-服務(wù)端通信協(xié)議,和服務(wù)端代碼的深層知識(shí)。不同瀏覽器版本間的區(qū)別使得開發(fā)與調(diào)試更加困難。但是,IBM® Rational® Application Developer Version 7 提供了所有開發(fā) Ajax Web 應(yīng)用程序所需的工具,而 不必 實(shí)現(xiàn)所有底層細(xì)節(jié)。

Rational Application Developer V7 提供了:
◆擴(kuò)展的 JSF 允許在 JavaServer? Framework (JSF)中處理 Ajax 請(qǐng)求
◆一個(gè)可以在所有***版本的主流瀏覽器中初始化 Ajax 請(qǐng)求,并在服務(wù)器端響應(yīng)僅對(duì)部分頁面進(jìn)行更新的 JavaScript? 程序庫

Rational Application Developer V7中 Ajax和JSF 實(shí)現(xiàn)的技術(shù)細(xì)節(jié)超出了本文的范圍,但是讓我們來看看您如何使用這些技術(shù)。

如何用JSF組件應(yīng)用Ajax

為 JSF 頁面增加 Ajax 需要四個(gè)步驟:

1. 識(shí)別由 Ajax 請(qǐng)求更新的頁面區(qū)域。 在 Rational Application Developer V7中, 您可以在幾乎任何面板組件的內(nèi)容中使用 Ajax。面板包括了從簡單的容器,例如 <h:panelGroup> 和 <h:panelGrid>,到特性豐富的面板,例如菜單 (<hx:panelMenu>) 和對(duì)話框(<hx:panelDialog>)。

2. 選擇所使用的 Ajax 請(qǐng)求類型。 Rational Application Developer V7 JSF 庫支持三種 Ajax 請(qǐng)求:
◆對(duì)于同一頁面的 GET 請(qǐng)求 (<hx:ajaxRefreshRequest>)
◆對(duì)于同一頁面的 POST 請(qǐng)求 (<hx:ajaxSubmitRequest>)
◆對(duì)其他頁面的 GET 請(qǐng)求 (<hx:ajaxExternalRequest>)

3. 應(yīng)用 Ajax 請(qǐng)求配置傳遞給服務(wù)器的參數(shù)。
◆對(duì)于 GET 請(qǐng)求,您可以傳遞頁面中不同輸入欄的值。
◆對(duì)于 POST 請(qǐng)求, 提交全部表格。

4. 識(shí)別初始化 Ajax 請(qǐng)求的事件。 它可以是任何的客戶端 JavaScript 事件,例如按鈕的 onclick , 輸入欄的 onblur, 或復(fù)選框的 onchange 。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Ajax和JSF如何使用Rational Application Developer V7實(shí)現(xiàn)Web應(yīng)用程序”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI