`
kidiaoer
  • 浏览: 822403 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

dwr学习必需知识点

    博客分类:
  • dwr
阅读更多
DWR学习必须
  DWR是一个开源的java包,可以使浏览器中的代码使用web服务器中java类的方法,就像这个方法就是在浏览器中一样。
      DWR包括两个部分:一个运行在服务器端的Java Servlet,负责处理浏览器的请求并发送反馈给浏览器;另一个是运行在浏览器端的Java Script,负责发生请求并动态修改web页面。
步骤:
(1)、下载dwr.jar,放在web-inf/lib目录下
(2)、修改web.xml,增加:
<servlet> 
<servlet-name>dwr-invok<erservlet-name> 
<display-name>DWR Servlet<display-name> 
<servlet-class>uk.ltd.getahead.dwr.DWRServlet<servlet-class> //如果是DWR 2.x,改成org.directwebremoting.servlet.DwrServlet  
<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> 
(3)、创建dwr.xml放在与web.xml一个目录下面
<?xml version="1.0" encoding="UTF-8"?>
<!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"> //JS使用的类名
<param name="class" value="java.util.Date"/>  //实际java的类
<create> 
<create creator="new" javascript="Demo" scope="page/request/session/application"> //可以设置对象保存的位置
<param name="class" value="your.java.Bean"/> 
<create> 
<allow> 
<dwr> 
(4)、
一般jsp页面中需要加入:
<script type='text/javascript' src='dwr/interface/Hello.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<script type='text/javascript' src='hello.js'></script>
其中最后一个js文件是自定义的文件
(5)、写服务端的JAVA类
(6)、写客户端的js
function hello() { var user = $('user').value;
    Hello.hello(user, callback);
}

function callback(msg) {
   DWRUtil.setValue('result', msg);
}
1.web.xml中dwr定义的一点小技巧
加下面的参数,可以让dwr以debug模式产生测试页面
<init-param>  
<param-name>debugparam-name> 
<param-value>trueparam-value> 
<init-param> 
2.dwr.xml介绍
格式:
<dwr>    
<init>  
<creator id="..." class="..."/> 
<converter id="..." class="..."/> 
< init>  
<allow> 
<create creator="..." javascript="..."/> 
<convert converter="..." match="..."/> 
< allow> 
<signatures>  
  ...   
<signatures>   
<dwr> 

(1)、create元素介绍,一般结构如下,对每个要在远程访问方法的java类都要定义一个creator

<create creator="..." javascript="..." scope="..."> 
<param name="..." value="..."/> 
<auth method="..." role="..."/> 
<exclude method="..."/>  
<include method="..."/> 
<create>   对各个元素进行描述
(2)、 creator属性
new:指用java的new操作符创建对象
none:并不产生对象
scripted:用脚本语言创建对象,如BeanShell 或 Groovy via BSF
spring:通过spring framework创建对象
struts:使用struts的FormBean
pageflow:使用Beehive or Weblogic的PageFlow
(3)、javascript属性
         在浏览器端代理远程java对象的javascript对象的名字
(4)、scope属性
         远程java对象scope可以设置page、request、session、application。
(5)、param子元素:定义访问的具体java类。

(6)、include和exclude子元素:限制访问的方法
DWR util.js工具包的使用
目录列表:
1、$()
2、DWRUtil.getText(id)
3、DWRUtil.getValue(id)
4、DWRUtil.setValue(id,value)
5、DWRUtil.getValues()
6、DWRUtil.setValues()
7、DWRUtil.addOptions and DWRUtil.removeAlloptions
8、DWRUtil.addRows and DWRUtil.removeAllRows
9、DWRUtil.onReturn
10、DWRUtil.toDescriptiveString
11、DWRUtil.useLoadingMessage

(1)、DWRUtil.selectRange("selectRangeBasic", 5, 15) 选中selectRangeBasic文本框里面从第五个字符到第15个字符之间的字符.
(2)、var arrayFive = [ 'One', 'Two', 'Three', 'Four', 'Five' ];
DWRUtil.addOptions('addOptionsBasic', arrayFive); 将数组添加到下拉菜单里面去;
(3)、DWRUtil.getValue('addOptionsBasic') 得到 addOptionsBasic 对象的值;
(4)、DWRUtil.getText('addOptionsBasic') 得到下拉框 addOptionsBasic 显示的文本;
(5)、var arrayObject = [
{ name:'One', value:'1' },
{ name:'Two', value:'2' },
{ name:'Three', value:'3' },
{ name:'Four', value:'4' },
{ name:'Five', value:'5' }
];DWRUtil.addOptions('addOptionsObject1', arrayObject, "name"); 将数组添加到下拉菜单里面去;后面的参数是确定那个是给用户显示的文本,同时也是值;如果是name表示名称和值都用name显示。
DWRUtil.addOptions('addOptionsObject1', arrayObject, "name","value"); 同上,不过后面参数是: 3=值;4=文本;
(6)、var map = { one:1, two:2, three:3, four:4, five:5 };
DWRUtil.addOptions('addOptionsMap1', map); 同上, one 是值;1 是文本;
DWRUtil.addOptions('addOptionsMap1', map,true); 同上, 1 是值;one 是文本;
(7)、 DWRUtil.cloneNode('cloneNode1', { idPrefix:'pre', idSuffix:'suf' });克隆一个节点,参数一为要克隆的节点的id,第二个参数是在克隆的节点id前面加pre,后面加suf.(注意:如果该节点有子节点的话,子节点的名字也一样加
(8)、DWRUtil.onReturn(event, submitFunction);一般在form表单里面,防止在文本框上按回车就提交表单.
例如:
<input type="text"
onkeypress="DWRUtil.onReturn(event, submitFunction)"/>
<input type="button" onclick="submitFunction()"/>
submitFunction表示要调用的js函数
分享到:
评论

相关推荐

    dwr结合ssh使用

    这些库的缺失会导致启动时的NoClassDefFoundError,因为它们包含了运行DWR、Hibernate、Spring和其他相关技术所必需的类。因此,确保所有依赖项都已正确添加到项目的类路径中是至关重要的。 在实际的SSH与DWR集成...

    dwr3 学习笔记<一>

    【标题】"dwr3 学习笔记&lt;一&gt;" 涉及的主要知识点是Direct Web Remoting (DWR)框架的第三版。DWR是一种Java库,它允许Web应用程序在客户端(通常是JavaScript)和服务器端(Java)之间进行实时通信,从而实现动态的、...

    dwr案例+文档+jar

    通过这些资源,我们可以学习到以下知识点: 1. **DWR基础**:了解DWR的基本概念,如反向AJAX、RemoteProxy和RemoteObject等。 2. **DWR配置**:学习在web.xml和dwr.xml中设置DWR的相关配置,使DWR能够正常工作。 3....

    dwr工程 jar包

    以下是一些关键知识点: 1. **反向AJAX(Reverse AJAX)**:DWR实现了反向AJAX,即服务器主动推送数据到客户端,而不仅仅是响应客户端的请求。这使得Web应用能够实现即时更新和更流畅的用户体验。 2. **自动转换**...

    DWR 帮助文档+jar包

    在提供的"**DWR 帮助文档+jar包**"中,包含以下几个关键知识点: 1. **DWR的基本概念**:DWR的核心是将Java对象暴露给JavaScript,以便在客户端执行,这种技术被称为反向Ajax或远程脚本。它提供了安全、高效的机制...

    dwr+spring

    在整合DWR和Spring的过程中,关键知识点包括: 1. **DWR配置**:需要在web.xml中配置DWR的servlet,指定其映射路径以及初始化参数。 2. **Spring配置**:创建Spring的配置文件,定义bean的依赖关系,可能包括数据库...

    DWR3半推方式聊天

    **DWR3半推方式聊天** Direct Web Remoting (DWR) 是一个开源JavaScript库,它允许在浏览器和服务器之间进行实时的、双向的通信,实现了Web应用中的Ajax...理解并掌握这些知识点,对于开发实时Web应用是非常有帮助的。

    个人知识管理系统 相关包

    构建个人知识管理系统,开发者可能会结合这些技术,比如使用Struts2作为前端控制器,Spring管理各种组件和服务,Hibernate负责数据存取,而DWR则可以用来实现富客户端交互,实时更新显示知识库的最新内容。...

    OA 教学项目

    在学习"OA 教学项目"时,我们需要关注以下几个关键知识点: 1. **编程语言**:通常OA系统会使用Java、Python或.NET等后端语言,学习这些语言的基础语法和面向对象编程是必不可少的。 2. **数据库管理**:OA系统...

    Ajax资料

    ### Ajax资料核心知识点详解 #### 一、Ajax概述与发展历程 **标题与描述解析:**“Ajax资料”指向了关于Ajax技术的详细学习资源。“很不错的Ajax学习资料”表明这是一份高质量的学习材料,旨在帮助读者深入了解...

    instantmessage-lib

    以下是一些关键知识点的详细说明: 1. **Java Chat**: Java Chat是该系统的核心部分,它允许用户在网站上进行实时通信。这通常涉及到Socket编程,用于创建客户端和服务器之间的连接。Java的多线程技术也在这里发挥...

Global site tag (gtag.js) - Google Analytics