什么是DWR(Direct Web Remote)?
DWR是一种AJAX解决方案!
DWR包括一个java库,以及一套javascript,使得我们可以用一种非常简单的方式,在页面上使用javascript直接调用后台的java对象!
DWR的javascript库包括几个部分:dwr的javascript引擎(即对AJAX调用的封装)、dwr提供的一些非常有用的辅助javascript函数库、以及dwr自动帮我们生成的专门用于调用后台JavaBean方法的javascript库!
Dwr在运行的时候,动态生成一个javascript库,这个库是对后台javabean调用的封装,我们可以直接使用这个库来实现直接调用JavaBean的目的!
注意:是在运行的时候动态生成!
下面我们来看看如何安装和使用(基于DWR2.x版本):
如何下载、安装与使用?
官方网址: http://getahead.org/dwr
1、 下载dwr.jar,将其加入web-inf/lib目录
2、 修改web.xml文件,添加DWRServlet的映射
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.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>
3、 配置dwr,即在WEB-INF目录下,添加dwr.xml文件,让dwr知道在运行的时候应该给哪些JavaBean生成相应的javascript库!
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">
<dwr>
<allow>
<create creator="new" javascript="test1">
<param name="class" value="com.bjsxt.dwr.Test1"/>
</create>
</allow>
</dwr>
这个配置的意思是,要创建的是Test1对象的javascript库,而且这个库的名字叫test1,同时,这也是我们在JSP页面上调用这个对象的时候所使用的名称,请看下面的JavaBean代码和JSP实例:
4、下面是Test1这个JavaBean的源代码:
package com.bjsxt.dwr;
public class Test1 {
public String sayHello(String name){
return "你好,"+name;
}
}
5、在JSP中的使用!
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<!--下面的二个js文件都是在程序运行过程中动态生产的 -->
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<!--test1.js这个js文件的名字要与你dwr.xml配置文件中配置的名字一样 -->
<script type="text/javascript" src="dwr/interface/test1.js"></script>
<title>Insert title here</title>
<script type="text/javascript">
function sayHello(){
test1.sayHello("李四ddd",
function(data){
alert(data);
}
);
}
</script>
</head>
<body>
<a href="#" onclick="sayHello()">Test1</a>
</body>
</html>
让我们简单看一下这个JSP文件:首先引入DWR中的两个核心javascript库:engine.js和util.js,它们分别是dwr中的核心引擎库和辅助工具函数库!
第三个引入的dwr/interface/test1.js,实际上这个文件并不存在,这是由dwr在运行的时候动态生成的!test1这个名称,跟dwr.xml文件中配置的对应对象的javascript属性一致!
而且,我们在使用的时候,直接使用test1这个名称,作为这个对象的引用。直接调用这个对象的方法:sayHello,这个方法的名称必须与JavaBean中的方法名称一致!
sayHello方法有一个参数,同时返回一个值。我们可以直接传递参数,同时指定一个javascript函数来处理这个返回值(如上例所示)。
如何传递参数
如果要调用的方法有参数,则将参数放在前面
如何处理返回值
定义一个函数来处理返回值,这个函数有一个参数,就是JavaBean方法的返回值
DWR Javascript库中常用函数的使用
设置异步/同步模式
默认情况下,DWR以异步的方式跟服务器通信,即可以同时向服务器发送请求,如果想要改为同步的方式,可以调用:dwr.engine.setAsync(false);
获得对某个页面元素对象的引用
$(“元素的ID或名称”)
dwr与spring结合的时候,dwr配置文件的简单配置演示
<dwr>
<allow>
<!-- javascript:在页面中javascript中调用的名字 createor要写成spring -->
<create creator="spring" javascript="aclService">
<!-- value:交给spring管理的那个类的名字 -->
<param name="beanName" value="aclService" />
</create>
</allow>
</dwr>
dwr.jar下载:
- 大小: 22 KB
分享到:
相关推荐
在提供的“AJAX框架DWR简单应用.pdf”文件中,你可能会找到关于如何设置DWR环境、编写Java接口、配置DWR配置文件、在前端JavaScript中使用DWR,以及示例代码和实际运行效果的详细教程。这个文件是学习和理解DWR工作...
下面将详细介绍DWR框架的基本概念、工作原理及其简单应用。 1. **DWR框架概述** DWR框架的核心功能是提供一个安全、高效且易于使用的桥梁,使得Web前端能够与后台Java服务进行通信。它简化了Ajax开发,使得开发者...
### DWR介绍 #### 一、DWR概述 DWR(Direct Web Remoting)是一种用于简化客户端JavaScript调用服务器端Java方法的技术。它通过Ajax技术实现了网页上的JavaScript直接调用服务器端的Java对象,极大地提高了Web应用...
在"Dwr demo - Dwr简单使用"这个项目中,你可以通过以下步骤了解和学习DWR的基本用法: 1. **环境准备**:首先确保你有Eclipse IDE,并且已经安装了Java Development Kit (JDK)。由于DWR是一个Java库,所以你需要一...
### DWR入门与应用 #### 一、DWR简介及安装配置 DWR(Direct Web Remoting)是一种简化Ajax开发的框架,它使得Java开发者能够更轻松地将服务器端的Java对象暴露给客户端的JavaScript代码进行调用。通过DWR,开发者...
### 基于Ajax技术的DWR框架的研究与应用 #### 概述 随着Web技术的不断发展,用户对于Web应用的交互性和响应速度有了更高的要求。传统的Web开发方式已难以满足这种需求,因此Ajax(Asynchronous JavaScript and XML...
DWR通过AJAX技术提供了一种简单的方法来创建富客户端界面,使得用户可以在不刷新整个页面的情况下与服务器交换数据和调用方法。 ### 一、DWR基本概念 1. **AJAX**:Asynchronous JavaScript and XML(异步...
《DWR的简单应用程序》 DWR(Direct Web Remoting)是一种开源JavaScript库,它允许在Web浏览器和Java服务器之间进行实时的、双向的通信,实现了JavaScript与Java之间的远程调用,极大地增强了Web应用的交互性。DWR...
**DWR(Direct Web Remoting)框架简单应用示例** DWR(Direct Web Remoting)是一种Java技术,它允许在浏览器和服务器之间进行双向通信,实现了JavaScript与Java对象的直接交互,极大地简化了Web应用程序中的Ajax...
总的来说,"DWR应用简单Demo"是一个学习DWR的起点,通过这个例子,你可以了解到如何设置和使用DWR进行异步通信,以及如何在客户端和服务器端之间传递数据。对于想要提升Web应用交互性的开发者来说,掌握DWR是非常有...
### DWR 3.0 与 DWR 2.0 的区别 DWR(Direct Web Remoting)是一种用于简化 AJAX 应用程序开发的技术。它允许客户端 JavaScript 直接调用服务器端 Java 方法,从而降低了 AJAX 编程的复杂度。DWR 的最新版本为 3.0...
例如,在压缩包内的文件"A051]使用DWR开发AJAX+For+J2EE.wrf"可能是一个演示或者教程,详细介绍了如何使用DWR框架在J2EE环境中构建AJAX应用。这个文件可能涵盖从安装DWR,配置web.xml,编写可远程调用的Java类,到在...
**DWR(Direct Web Remoting)**是一种Java技术,它允许Web应用程序在浏览器和服务器之间进行实时通信,类似于Ajax(Asynchronous JavaScript and XML),但提供了更简单和直接的方法。DWR使得JavaScript可以直接...
**DWR(Direct Web Remoting)**是一种JavaScript库,它允许Web应用程序与服务器进行异步交互,实现Ajax功能。在本“DWR与后台异步交互简单例子”中,我们将探讨如何利用DWR来实现前后端的数据通信,提高用户体验。 ...
标题 "DWR与SPRING 集成" 涉及到的是两个在Web开发中常用的开源框架——...总之,DWR与Spring的集成是提升Web应用交互体验的有效手段,通过合理的配置和实践,可以充分利用两者的优势,构建高效、易维护的Web应用程序。
**DWR(Direct Web Remoting)**是一种JavaScript库,它允许Web应用程序在客户端与服务器之间进行实时通信,绕过传统的HTTP请求。DWR通过提供一套简单的API,使得开发者可以轻松地在JavaScript中调用Java方法,实现...
Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行交互,实现动态的Web应用。DWR通过异步HTTP请求(AJAX)来实现实时的数据交换,使得用户界面更加响应迅速,提供...
在这个"简单使用DWR完整例子"中,我们将深入理解DWR的基本概念、配置、以及如何在SSH(Spring、Struts、Hibernate)技术框架下集成和应用DWR。 首先,了解DWR的核心概念至关重要。DWR通过JavaScript API使得Java...