DWR: Easy AJAX for JAVA

來源:互聯網
上載者:User
DWR(Direct Web Remoting)是一個WEB遠程調用架構.利用這個架構可以讓AJAX開發變得很簡單.利用DWR可以在用戶端利用JavaScript直接調用服務 端的Java方法並傳回值給JavaScript就好像直接本地用戶端調用一樣(DWR根據Java類來動態產生JavaScrip代碼).它的最新版本 DWR0.6添加許多特性如:支援Dom Trees的自動設定,支援Spring(JavaScript遠程調用spring bean),更好瀏覽器支援,還支援一個可選的commons-logging日記操作.

DWR: Easy AJAX for JAVA

DWR是一個Java開源庫,協助你實現Ajax網站。

它可以讓你在瀏覽器中的Javascript代碼調用Web伺服器上的Java,就像在Java代碼就在瀏覽器中一樣。

DWR主要包括兩部分:

  • 在伺服器上啟動並執行Servlet來處理請求並把結果返回瀏覽器。
  • 運行在瀏覽器上的Javascript,可以發送請求,並動態改變頁面。
    DWR會根據你的Java類動態產生Javascript代碼。這些代碼的魔力是讓你感覺整個Ajax調用都是在瀏覽器上發生的,但事實上是伺服器執行了這些代碼,DWR負責資料的傳遞和轉換。

這種Java和Javascript之間的遠程調用會讓DWR使用者感覺像是曾經習慣使用的RMI或SOAP的RPC機制。而且這一過程還不需要額外的瀏覽器外掛程式。

Java是同步的,而Ajax是非同步。所以當你調用一個遠程方法時,你要給DWR一個回呼函數,當資料從網路上回來時,DWR會調用這個函數。


這個圖表現了DWR是如何在onclick事件中改變下拉式清單的內容的。

DWR動態為服務端AjaxService類(Java)產生了一個相應的用戶端AjaxService類(Javascript)。這個類被 eventHandler調用。DWR就會去處理整個遠程調用的細節,包括在Javascript和Java之間轉換參數和傳回值。然後在這裡例子中,它 會執行你提供的回呼函數(populateList),這個函數再利用DWR提供的工具函數來更改頁面內容。

DWR幫你生產出具有很好互動性的網站,它提供的一些Javascript庫幫你處理DHTML,也提供了一些例子做為參考。

要查看如何開始用DWR可以看開始指南和下載DWR

不太喜歡這樣的方式,用戶端不應該直接調用服務端的方法,這樣用戶端和服務端的耦合性增大了</

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.