多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > DWR是什么?有什么作用?如何使用?

DWR是什么?有什么作用?如何使用?

來源:程序員人生   發布時間:2014-01-01 22:08:25 閱讀次數:4069次

  DWR介紹

  DWR(Direct Web Remoting)是一個開源的類庫,可以幫助開發人員開發包含AJAX技術的網站.它可以允許在瀏覽器里的代碼使用運行在WEB服務器上的JAVA函數,就像它就在瀏覽器里一樣.

  它包含兩個主要的部分:允許JavaScript從WEB服務器上一個遵循了AJAX原則的Servlet(小應用程序)中獲取數據.另外一方面一個JavaScript庫可以幫助網站開發人員輕松地利用獲取的數據來動態改變網頁的內容.

  DWR采取了一個類似AJAX的新方法來動態生成基于JAVA類的JavaScript代碼.這樣WEB開發人員就可以在JavaScript里使用Java代碼就像它們是瀏覽器的本地代碼(客戶端代碼)一樣;但是Java代碼運行在WEB服務器端而且可以自由訪問WEB 服務器的資源.出于安全的理由,WEB開發者必須適當地配置哪些Java類可以安全的被外部使用.

  這個從JAVA到JavaScript的遠程功能方法給DWR的用戶帶來非常像傳統的RPC機制,就像RMI或者SOAP一樣,而且擁有運行在WEB上但是不需要瀏覽器插件的好處.

  DWR不認為瀏覽器/WEB服務器協議是重要的,而更樂于保證編程界面的簡單自然.對此最大的挑戰就是把AJAX的異步特性和正常JAVA方法調用的同步特性相結合.在異步模式下,結果數據在開始調用之后的一段時間之后才可以被異步訪問獲取到.DWR允許WEB開發人員傳遞一個回調函數,來異步處理Java函數調用過程.

  使用方法

  1.1、dwr.xml的配置
  <dwr>
  <allow>
  <create creator="new" javascript="testClass" >
  <include method="testMethod1"/>
  </create>
  </allow>
  </dwr>
  <allow>標簽中包括可以暴露給javascript訪問的東西。
  <create>標簽中指定javascript中可以訪問的java類,并定義DWR應當如何獲得要進行遠程的類的實例。creator="new"屬性指定java類實例的生成方式,new意味著DWR應當調用類的默認構造函數來獲得實例,其他的還有spring方式,通過與IOC容器Spring進行集成來獲得實例等等。javascript=" testClass "屬性指定javascript代碼訪問對象時使用的名稱。
  標簽指定要公開給javascript的java類名。
  <include>標簽指定要公開給javascript的方法。不指定的話就公開所有方法。
  <exclude>標簽指定要防止被訪問的方法。
  1.2、javascript中調用
  首先,引入javascript腳本
  <script src='dwr/interface/ testClass.js'></script>
  <script src='dwr/engine.js'></script>
  <script src='dwr/util.js'></script>
  其中TestClass.js是dwr根據配置文件自動生成的,engine.js和util.js是dwr自帶的腳本文件。
  其次,編寫調用java方法的javascript函數
  Function callTestMethod1(){
  testClass.testMethod1();
  }
  2、調用有簡單返回值的java方法
  2.1、dwr.xml的配置
  配置同1.1
  <dwr>
  <allow>
  <create creator="new" javascript="testClass" >
  <include method="testMethod2"/>
  </create>
  </allow>
  </dwr>
  2.2、javascript中調用
  首先,引入javascript腳本
  其次,編寫調用java方法的javascript函數和接收返回值的回調函數
  Function callTestMethod2(){
  testClass.testMethod2(callBackFortestMethod2);
  }
  Function callBackFortestMethod2(data){
  //其中date接收方法的返回值
  //可以在這里對返回值進行處理和顯示等等
  alert("the return value is " + data);
  }
  其中callBackFortestMethod2是接收返回值的回調函數
  3、調用有簡單參數的java方法
  3.1、dwr.xml的配置
  配置同1.1
  <dwr>
  <allow>
  <create creator="new" javascript="testClass" >
  <include method="testMethod3"/>
  </create>
  </allow>
  </dwr>

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久大香伊蕉在人线国产联合 | 亚洲精品成人在线 | 一级做a爰性色毛片免费 | 亚洲欧美专区精品久久 | 欧美一级片手机在线观看 | 欧美精品免费一区欧美久久优播 | 国产精品久久亚洲不卡4k岛国 | 亚洲色图网址 | 欧美自拍网站 | 中文字幕中文字幕中中文 | 岛国午夜精品视频在线观看 | 老司机成人免费精品视频 | 欧美视频不卡一区二区三区 | 免费看黄网址 | 国产图区 | 久草在线视频福利资源站 | 免费视频亚洲 | 在线不卡国产 | 亚洲国产国产综合一区首页 | a毛片免费看 | 国产福利一区在线 | 日韩一级在线播放免费观看 | 亚洲一区不卡 | 亚洲产在线精品第一站不卡 | 日本一级毛片免费播放 | 亚洲成a人不卡在线观看 | 日韩欧美国产成人 | 欧美日韩亚洲另类 | 精品a级片| 乱在线伦视频免费 | 精彩视频在线观看 | 亚洲一区二区三区夜色 | 午夜理伦三级在线观看 | 韩日精品 | 一级毛片短视频 | 看一级黄色毛片 | 亚洲欧美综合一区二区三区四区 | 欧美日韩视频一区三区二区 | 久久生活片 | 福利片在线看 | 91精品91 |