`
forlab
  • 浏览: 136276 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ajax之DWR框架使用小结(1)

 
阅读更多
DWR,Direct Web Remoting的简称是DWR,它的实现是基于Ajax的,可实现无刷新的效果。这个框架最大的优点就是可以在JS中调用Java方法,传递参数,并且可以得到返回值。它是开源(Apache)的产品。很早之前使用过DWR,今天帮师兄做作业,回顾了一番,有了更进一步的认识,所以简单总结一下它的使用方法。
第一步:下载DWR包。
从网站(http://directwebremoting.org/dwr/download)下载最新的dwr.jar包,放在你的Application的WEB-INF/lib目录下。
第二步:配置web.xml文件。
在web.xml文件的<web-app></web-app>标签中,添加如下配置:
12345678910 <servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>
org.directwebremoting.servlet.DwrServlet
</servlet-class>
  </servlet>
  <servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>


第三步:配置dwr.xml文件。
在你的Application的WEB-INF下新建dwr.xml文件,内容如下:
12345678910 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.ltd.uk/dwr/dwr20.dtd">
<dwr>
  <allow>   
    <create creator="new" javascript="Pict" scope="application">
      <param name="class"  value="bean.Pict"/>
       <include method="method1" />
    </create>        
  </allow>
</dwr>


解释:
creator="new"属性指定java类实例的生成方式。"new"意味着DWR应该调用类的默认构造函数来获得类的实例,一般我们用这个就可以搞定了。当然还有其它的方式,目前我还没有用到,就不说了。
javascript="Pict"指定JavaScript代码访问Java对象的时候使用的名称。
标签指定要公开给JavaScript的java类名。
<include>标签指定要公开给JavaScript的方法,不指定的话公开所有的方法。
第四步:在JS中调用。
1. 引入JavaScript脚本。
123 <script language="javascript1.2" src="dwr/interface/Pict.js"></script>
<script language="javascript1.2" src="dwr/util.js"></script>
<script language="javascript1.2" src="dwr/engine.js"></script>


其中第一个导入的标签脚本必须是手动写入,名字和<create>标签中的属性JavaScript的值相等,其后缀为.js。你只要在这里手动写入就可以了,实际由dwr根据配置文件自动生成其内容。util.js和engine.js是dwr自带的脚本文件。
2. 编写调用java方法的JS函数。
比如:下面是一个没有参数,没有返回值的函数调用。
123 Function callJava(){
   Pict.method1();
}


如果无参数,有返回值:
123456 Function callJava(){
   Pict.method1(retu);//retu称之为回调函数,实际就是将返回值赋给了这个函数。
}
Function retu(data){
   Alert(data);//这里的data的值才是实际上的方法method1的返回值。
}



如果有参数,也有返回值,可直接在方法中加入到回调函数的前面即可��
总的来说,参数和回调函数都放在方法的括号中,遵循的原则是回调函数总是最后一个,有参数就往其前面写,没有就不用写了。


基本上的用法如上,但还有一些细节,比如返回值是JavaBean,Map等,都需要进一步的配置,等俺明天再写。

分享到:
评论

相关推荐

    ajax框架:dwr与ext实践_.pdf

    #### DWR框架简介 DWR(Direct Web Remoting)是一种用于简化Ajax开发的框架,它允许开发者在客户端JavaScript中直接调用服务器端的Java方法,从而大大降低了开发复杂度。对于习惯于面向对象编程的开发者来说,DWR...

    《ajax框架:dwr与ext》实战

    ### DWR 框架详解及实战应用 #### 一、DWR简介 ...通过上述内容的学习和实践,开发者可以深入了解DWR框架的工作原理和技术优势,并能够将其应用于实际项目中,从而构建高效、灵活的Ajax应用程序。

    dwr快速入门+实例

    #### DWR应用小结 通过以上介绍可以看出,DWR不仅简化了客户端与服务器之间的交互,还提供了丰富的特性来支持更复杂的场景,如即时通讯。对于希望快速构建高效、互动性强的Web应用的开发者来说,DWR无疑是一个非常...

    JavaEE框架总结

    支持与DWR集成实现Ajax功能;支持国际化等功能。 #### 四、Spring框架 **1. Spring的核心功能**: - **AOP(面向切面编程)**:用于处理横切关注点(例如日志记录、事务管理等),通过定义切入点和通知来实现。 - ...

    Spring in Action(第二版 中文高清版).part1

    第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结

    Spring in Action(第二版 中文高清版).part2

    第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结

    struts2+ajax 无刷新验证身份证号是否已注册,身份证号是否正确

    #### 四、小结 通过上述步骤,我们可以实现一个基于Struts2和AJAX技术的身份证号验证系统。该系统不仅能够有效地减少服务器压力,还能显著提升用户体验。在实际开发中,还需要根据具体的业务需求进行调整和完善。...

    Spring in Action(第2版)中文版

    16.5spring中带有dwr的支持ajax的应用程序 16.5.1直接web远程控制 16.5.2访问spring管理的beandwr 16.6小结 附录a装配spring a.1下载spring a.1.1研究spring发布 a.1.2构建自己的类路径 a.2把spring添加为一...

    DWRUtil 小结

    DWRUtil是DWR框架中的一个工具类库,提供了一系列用于操作DOM元素、处理表单数据等功能的方法,极大地提高了Web应用的开发效率。 ### DWRUtil的主要功能方法 #### 1. DWRUtil.toDescriptiveString 该方法可以将DOM...

Global site tag (gtag.js) - Google Analytics