前言aJax也許很多人比較熟悉,但是dwr可以是應(yīng)用ajax變得非常的簡單,大大提高開發(fā)效率,而且dwr還提供了很多有用的js代碼,可以說是如虎添翼。
應(yīng)用解釋可能有部分人根本不知道aJax和dwr是什么東西,用來做什么的?既然標(biāo)題是基本使用,那我就從dwr有什么用來說說。一般來說,不管是jsp或者是asp要訪問數(shù)據(jù)庫都得submit一個form,然后獲取數(shù)據(jù)庫或者執(zhí)行部分邏輯,接著web跳了另外一頁把執(zhí)行的結(jié)果顯示出來。這個過程web相對于是刷新了一下。那么有什么辦法可以令web不刷新,而頁面又可以和數(shù)據(jù)庫交互數(shù)據(jù)呢?有,就是ajax技術(shù),利用web 對象把數(shù)據(jù)以xml方式submit到web server,然后返回結(jié)果,中間全部用javascript操作,頁面不閃動或者刷新。但是自己操作xml對象未免有點小煩,能不能把這些工作集成到一個對象里面呢?能,就是dwr.下面開始教你如何使用。
如何使用
下載軟件包http://getahead.ltd.uk/dwr/這里就可以
安裝軟件包解壓軟件包,把dwr.jar 文件拷貝到你web項目的WEB-INF/lib 目錄中,同時編輯WEB-INF/web.xml文件,在此文件中加入
- <servlet>
- <servlet-name>dwr-invoker</servlet-name>
- <display-name>DWR Servlet</display-name>
- <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
- <init-param>
- <param-name>debug</param-name>
- <param-value>true</param-value>
- </init-param>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>dwr-invoker</servlet-name>
- <url-pattern>/dwr/*</url-pattern>
- </servlet-mapping>
另外,在WEB-INF目錄中建立一個dwr.xml 文件,文件內(nèi)容入下
- <!DOCTYPE dwr PUBLIC
- "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
- "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
-
- <dwr>
- <allow>
- <create creator="new" javascript="JDate">
- <param name="class" value="java.util.Date"/>
- </create>
- <create creator="new" javascript="Demo">
- <param name="class" value="your.java.Bean"/>
- </create>
- </allow>
- </dwr>
這個可以說也是dwr的配置文件最后,重新啟動你的tomcat或者resin等jsp web server. 測試安裝效果在ie敲入http://localhost:8080/[YOUR-WEBAPP]/dwr/ 如果成功顯示頁面,那說明你安裝正確了。 應(yīng)用于網(wǎng)頁測試頁會顯示JDate (java.util.Date) ,這個是也是例子,通過javascript調(diào)用web server中的java.util.Date,也相當(dāng)于調(diào)用web server里面的一個bean.那么我們?nèi)绾问褂盟兀?li> 你可以在自己的html文件中加入
- <script type=‘text/javascript‘ src=‘/sc/dwr/interface/JDate.js‘></script>
- <script type=‘text/javascript‘ src=‘/sc/dwr/engine.js‘></script>
比如我們要用bean中的toLocaleString方法返回一個時間string.那么你可以在javascript中編寫
- function displayLocaleDate()
- {
- var str = JDate.toLocaleString();
- alert(str);
- }
當(dāng)運行displayLocaleDate()方法就會彈出時間。 總結(jié)以上只是個調(diào)用服務(wù)器Date javabean的簡單例子,你可以更加自己的需要寫相應(yīng)的bean,可以做出非常出色的基于web聊天網(wǎng)站,或者實時圖表顯示應(yīng)用。