`
gzwfdy
  • 浏览: 84620 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

dwr应用(1)

    博客分类:
  • dwr
阅读更多

      DWR是一个Java开源库,帮助你实现Ajax网站。你可以在在Javascript代码中调用Web服务器上的Java程序,像在Java代码就在浏览器中一样。

      DWR主要包括两部分:

          1.在服务器上运行的Servlet来处理请求并把结果返回浏览器。

          2.运行在浏览器上的Javascript,可以发送请求,并动态改变页面。
      DWR会根据你的Java类动态的生成Javascript代码。你感觉整个Ajax调用都是在浏览器上发生的,但事实上是服务器执行了这些代码,DWR负责数据的传递和转换。这种Java和Javascript之间的远程调用会让DWR用户感觉像是曾经习惯使用的RMI或SOAP的RPC机制。而且这一过程还不需要额外的浏览器插件。Java是同步的,而Ajax是异步的。所以当你调用一个远程方法时,你要给DWR一个回调函数,当数据从网络上回来时,DWR会调用这个函数。(
http://wiki.javascud.org/display/dwrcn/Overview+of+DWR

1. 下载安装DWR的Jar包

         下载dwr.jar文件。把它放到你的webapp的WEB-INF/lib目录下。

2. 编辑配置文件

      把下面的代码加到WEB-INF/web.xml文件中。<servlet>那部分需要和其他的<servlet>在一起,<servlet-mapping>部分也一样。

<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文件。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd">
<dwr>

  <allow>
   <create creator="new" javascript="myDate">
            <param name="class" value="java.util.Date"/>
    </create>

  </allow>
</dwr>

上面配置的意思是用java中Date的new方法创建一个对象,在js中的名字是myDate;这样在页面引入这myDate之后就可以像这样使用:myDate.getDate()获取当期日期;

3. 访问dwr

      在浏览器中输入http://localhost:8080/[YOUR-WEBAPP]/dwr/可以测试dwr是否配置成功。

按上面配置之后,页面显示应该是:

Classes known to DWR:

点击“myDate”可以看到myDate的方法,也可以测试方法是否正确。在方法后面的括号中填入参数,点“execute”就会看到方法执行的结果。

到此dwr已经配置完成,可以在页面中使用了。

4.在web应用中使用

 

在页面中引入

<script src='/[YOUR-WEBAPP]/dwr/interface/[YOUR-SCRIPT].js'></script> <script src='/[YOUR-WEBAPP]/dwr/engine.js'></script>

就可以使用了。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics