前言aJax也许很多人比较熟悉,但是dwr可以是应用ajax变得非常的简单,大大提高开发效率,而且dwr还提供了很多有用的js代码,可以说是如虎添翼。
应用解释可能有部分人根本不知道aJax和dwr是什么东西,用来做什么的?既然标题是基本使用,那我就从dwr有什么用来说说。一般来说,不管是jsp或者是asp要访问数据库都得submit一个form,然后获取数据库或者执行部分逻辑,接着web跳了另外一页把执行的结果显示出来。这个过程web相对于是刷新了一下。那么有什么办法可以令web不刷新,而页面又可以和数据库交互数据呢?有,就是ajax技术,利用web 对象把数据以xml方式submit到web server,然后返回结果,中间全部用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 文件,文件内容入下
- <!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/
如果成功显示页面,那说明你安装正确了。
应用于网页测试页会显示JDate (java.util.Date) ,这个是也是例子,通过javascript调用web server中的java.util.Date,也相当于调用web server里面的一个bean.那么我们如何使用他呢?
你可以在自己的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);
- }
当运行displayLocaleDate()方法就会弹出时间。
总结以上只是个调用服务器Date javabean的简单例子,你可以更加自己的需要写相应的bean,可以做出非常出色的基于web聊天网站,或者实时图表显示应用。
posted on 2007-10-17 01:18
谭明 阅读(221)
评论(0) 编辑 收藏 所属分类:
AJAX