1。在使用DWR之前要去下载一个dwr.jar包(http://directwebremoting.org/dwr/download.html)加入到你的程序当中去。
2。在web.xml加班DWR配置如下:
<servlet>
<servlet-name>dwr</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</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
3。完成我们的Ajax调用的方法如:
public class UserDAO {
EntityManagerFactory factory = null;
EntityManager manager = null;
public void persist(User user) {
factory = Persistence.createEntityManagerFactory("mengya");
manager = factory.createEntityManager();
manager.getTransaction().begin();
manager.persist(user);
manager.getTransaction().commit();
manager.close();
factory.close();
}
public boolean exitUserName(String name) {
boolean flag = false;
factory = Persistence.createEntityManagerFactory("mengya");
manager = factory.createEntityManager();
Query query = manager.createQuery("select u from User u where u.username=:username");
query.setParameter("username", name);
List<User> userList = query.getResultList();
if (userList.size() != 0) {
flag = true;
}
manager.close();
factory.close();
return flag;
}
}
专门写一个包里面存放我们Ajax调用的方法如下:
package com.mengya.AjaxDAO;
import com.mengya.dao.UserDAO;
public class UserAjaxDAO {
private UserDAO userDao=new UserDAO();
public boolean exitUserName(String name){
return userDao.exitUserName(name);
}
}
4。配置我们的DWR里的dwr.xml(注意该文件要与web.xml同一个目录下面)如下:
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
<!-- allow部分定义了DWR能够创建和转换的类 -->
<allow>
<!--
每一个在类中被调用的方法需要一个<create …>有若干类型的creator,使用“new”关键字或者Spring 框架等。
-->
<!--
javascript 属性
在浏览器里给你创建的对象命名。避免使用JavaScript 保留字。这个名字将在页面里作为js被导入
-->
<create javascript="UserAjaxDAO" creator="new">
<param name="class"
value="com.mengya.AjaxDAO.UserAjaxDAO">
</param>
</create>
<convert match="com.mengya.bean.User" converter="bean"></convert>
</allow>
</dwr>
5。在页面上完成对Ajax的使用如下:
<html>
<head>
<!-- 前页两个js由dwr完成 -->
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<!-- 这个js文件由dwr自己完帮我们生成 -->
<script type="text/javascript" src="dwr/interface/UserAjaxDAO.js"></script>
<title>用户注册</title>
<script type="text/javascript">
function show(boolean){
if(boolean){
${"error"}.style.visibility="visible";
form1.username.value="";
}else{
${"error"}.style.visibility="hidden";
}
}
function validate(){
var name=form1.username.value;
//show表示该Ajax回调方法
UserAjaxDAO.exitUserName(name,show);
}
function init(){
${"error"}.style.visibility="hidden";
}
</script>
</head>
<body onload="init()">
<form action="#" name="form1">
<table id="table1" border="0">
<tr>
<td>用户名:</td>
<td>
<input type="text" name="username" onchange="validate()">
</td>
<td id="error">
<font color="red">用户名已存在!</font>
</td>
</tr>
<tr>
<td>密码:</td>
<td>
<input type="password" name="password">
</td>
</tr>
</table>
</form>
</body>
</html>
分享到:
- 2009-10-15 15:09
- 浏览 1435
- 评论(0)
- 论坛回复 / 浏览 (0 / 1482)
- 查看更多
相关推荐
在这个“dwr简单实例入门”中,我们将深入探讨DWR的基本概念、配置和一个简单的应用示例。 首先,了解DWR的核心概念: 1. **Remoting**:远程方法调用,DWR允许JavaScript代码通过HTTP请求调用服务器上的Java方法...
以上就是DWR技术的基本介绍和一个简单的使用实例。通过DWR,开发者可以轻松地构建具有Ajax功能的Web应用,提高用户体验,同时降低开发复杂性。在实际项目中,还可以结合Spring、Struts等框架进一步优化和扩展DWR的...
通过实践一个简单的DWR实例,你可以更好地理解如何在实际项目中使用它来构建高效、响应式的Web应用。随着对DWR的深入理解和应用,你会发现它不仅可以提升开发效率,还能显著提升应用的用户体验。
这个“DWR做的简单登录实例”是基于DWR技术实现的一个基本用户登录系统,它展示了如何利用DWR进行异步数据交换,以及在jsp页面上进行前端交互。 在DWR的环境中,我们通常有三个主要组件:`DWR Engine`、`Servlet`和...
DWR通过AJAX技术提供了一种简单的方法来创建富客户端界面,使得用户可以在不刷新整个页面的情况下与服务器交换数据和调用方法。 ### 一、DWR基本概念 1. **AJAX**:Asynchronous JavaScript and XML(异步...
这个压缩包文件“dwr简单示例(完整web工程)”显然是一个包含了完整配置和代码的DWR应用实例,旨在帮助开发者了解和学习如何在实际项目中使用DWR。 1. **DWR的基本概念**: - **Web Remoting**:DWR的核心是Web...
以下是一个简单的DWR实例,展示如何在页面上使用DWR调用服务器端的Java方法: 1. 创建一个Java类`MyService.java`,包含一个返回字符串的方法: ```java public class MyService { public String getGreeting() ...
本资源为DWR的简单使用,其中包括,返回简单类型,返回javaBean类型,参数为javaBean类型,返回List 、Map,javaBean>类型,此代码为完整代码,import可直接使用!
- 基本的AJAX调用:展示如何使用DWR进行简单的服务器端方法调用。 - 实时数据显示:例如,从服务器获取实时数据并在页面上动态更新。 - 表单数据提交:演示如何使用DWR无刷新地提交表单并处理服务器响应。 - 对象...
文件名"第十章"可能表示这是一个系列教程或案例研究的一部分,具体的内容可能涵盖了如何集成和使用Ajax、DWR和Struts来构建一个实际的应用。在这一章节中,读者可能会学到如何配置DWR与Struts的整合,编写Ajax请求和...
以下是对DWR简单设计的总结: 1. **DWR的基本概念**: DWR的核心功能是在客户端JavaScript和服务器端Java之间建立直接的通信通道,通过AJAX(Asynchronous JavaScript and XML)技术实现异步数据交换。这允许用户...
DWR(Direct Web Remoting...综上所述,这个"DWR消息推送简单实例"涵盖了DWR框架的基础使用、Maven工程的构建以及消息推送的实现。通过学习这个实例,开发者可以更好地理解如何在实际项目中利用DWR实现高效的双向通信。
在"DWR 3.0反向实例"中,我们将深入探讨这个版本的新特性、配置过程以及如何通过一个简单的Clock实现来演示其工作原理。 DWR 3.0相对于早期的2.0版本,引入了一些重要的改进,包括性能提升、错误处理机制的优化以及...
简单介绍dwr的使用方法,有前台直接调用修改推送给目标页面。也有通过定时任务推送给目标页面
压缩包内的"chat(dwrAjax反转)"文件可能是DWR聊天室的示例,它展示了如何使用DWR的推技术实现一个简单的实时聊天应用。在这个示例中,用户可以通过JavaScript与服务器进行交互,发送消息,同时服务器也能在接收到新...
**DWR(Direct Web Remoting)**是一种Java技术,它允许Web应用程序在浏览器和服务器之间进行实时的、双向的通信,无需使用插件或者ActiveX控件。DWR简化了JavaScript与服务器端Java对象的交互,使得前端可以方便地...
DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在...
DWR (Direct Web Remoting) 是一个开源Java库,它允许Web应用程序在客户端浏览器和...通过这个简单的实例,你可以开始学习如何使用DWR来提升你的应用程序用户体验,同时,提供的资源可以帮助你进一步深化对DWR的理解。
在本实例中,我们看到的是一个基于DWR的简单登录系统,它包含了一个完整的包,下载后可以直接运行,这对于初学者来说是极好的学习资源。 这个实例主要展示了以下几个知识点: 1. **DWR的基本概念**:DWR的核心是它...
在"**dwr反推简单例子**"中,我们将会探讨如何使用DWR进行数据的反向推送,即由服务器主动向客户端推送数据,而不仅仅是响应客户端的请求。 首先,DWR的核心概念包括三个主要部分:`Engine`、`Configuration`和`...