前一段时间看了一点dwr实现ajax的介绍信息,一直想找个机会看看到底怎么用。今天起了个早,试了一下感觉还挺好用的。 下面是我的一点学习总结:

一、配置DWR(http://getahead.org/dwr/getstarted)
1、将dwr.jar包放在web-info/lib目录下
2、编辑web.xml文件,添加servlet

< 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 >

3、创建dwr.xml配置文件注册JAVA类和脚本的对应信息。
<!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">
      <param name="class" value="java.util.Date"/>
    </create>
    <create creator="new" javascript="Demo">
      <param name="class" value="your.java.Bean"/>
    </create>-->
  </allow>
</dwr>
4、通过http://localhost:8080/[your webapp]/dwr可以获取到当前dwr中可以使用的JAVA类。

检测用户名是否已经使用例子:
1、按照前面两部配置一下DWR。
2、编写类:test.CheckUser
package test;

public class CheckUser {
public String check(String name){
 //访问数据库验证信息
 if(name.startsWith("aa")){
  return "用户已经存在";
 }
 else{
  return "可以使用该用户";
 }
}
}
3、创建配置文件并在配置文件中配置CheckUser类。
<?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="CheckUser">
      <param name="class" value="test.CheckUser"/>
    </create>
  </allow>
</dwr>
4、重启tomcat服务器,通过http://localhost:8080/[your webapp]/dwr可以看到CheckUser类,点击连接可以查看该类的方法和并测试。
5、编写index.jsp页面,实现效果。
在页面文件中实现效果
1)在javascript中通过使用dwr.util.getValue() 来获取页面中某个页面元素的值。
2)直接调用后台java类的方法,传递方法参数和“异不调用返回后的处理脚本函数"
3)”在处理脚本函数“中我们可以通过dwr.util.setValue(”控件ID",值)来个控件更新数据。
4)为了让javascript脚本中可以调用java类的方法我们需要在dwr.xml文件中申明java类。
注意:在页面中需要包含引入:
<script type='text/javascript' src='/test/dwr/interface/CheckUser.js'></script><!--- dwr.xml中定义的脚本名字-->
<script type='text/javascript' src='/test/dwr/engine.js'></script><!--- DWR-->
<script type='text/javascript' src='/test/dwr/util.js'></script><!---可以通过dwr.util.getValue方法获取元素值--->
否则会出现脚本错误

< html >  
< head >  
< script  type ='text/javascript'  src ='/test/dwr/interface/CheckUser.js' ></ script >
< script  type ='text/javascript'  src ='/test/dwr/engine.js' ></ script >
< script  type ='text/javascript'  src ='/test/dwr/util.js' ></ script >

< script  LANGUAGE =javascript > ...  
<!-- 
function check() ...{
  var name = dwr.util.getValue("username");
  CheckUser.check(name, function(data) ...{
    dwr.util.setValue("result", data);
  });
}
//--> 
</ script >  
</ head >  
< body >  
< input  type ="text"  id ="username" />
< input  value ="check"  type ="button"  onclick ="check()" />
< br />
  < span  id ="result" ></ span >
</ body >  
</ html >  

DWR 实现AJAX学习相关推荐

  1. dwr和ajax的区别,dwr的ajax实现

    记性太差,做个笔记... 第一步: 下载dwr的jar包放到lib文件夹下: 第二步: 在web.xml配置DWR: dwr-invoker uk.ltd.getahead.dwr.DWRServle ...

  2. asp.net的Ajax学习进阶

    asp.net的Ajax学习进阶 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.6.3  1.什么是Ajax? 2006年忽如 ...

  3. ajax请求返回json实例,Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据

    一.AjaxJson.aspx 处理业务数据,产生JSon数据,供JqueryRequest.aspx调用,代码如下: protected void Page_Load(object sender, ...

  4. ajax post 没有返回_Ajax异步技术之三:jQuery中的ajax学习

    jQuery中的Ajax学习: jQuery是js的一个轻量型框架,已经将js创建的操作进行了封装,而ajax也是js的一部分,所以jQuery也已经将ajax进行了封装. 封装: $.get(url ...

  5. 我的AJAX 学习系列文章

    我最近学习AJAX 的笔记 AJAX 学习笔记[一] 简单的异步通信示例 AJAX 学习笔记[二] 我编写的AJAX 测试代码示例 AJAX 学习笔记[三] get 与post 模式的区别 AJAX ...

  6. Ajax学习日志(三)—— 如何传递get请求参数

    Ajax入门(三) 一.如何传递get请求参数 1.1) 在app.js创建新路由 1.2) 在public文件夹新建一个html文件 1.3)运行 一.如何传递get请求参数 1.1) 在app.j ...

  7. AJAX学习前奏----JS基础加强

     AJAX学习前奏----JS基础加强 知识概要: 1.js类&属性&方法的定义 2.静态属性与方法 3.构造方法 4.原型的使用 5.Object对象直接加属性和方法 6.JSO ...

  8. Ajax 学习 二 Accordion和AccordionPane 淡入淡出效果和AutoSize自动尺寸

    Ajax 学习 二 Accordion和AccordionPane 淡入淡出效果和AutoSize自动尺寸 源代码 View Code <%@ Page Language="C#&qu ...

  9. ajax 学习第四天

    ajax 学习第四天 文章目录 ajax 学习第四天 1. 同源策略 1.1 同源 1.2 同源策略 2. 跨域 2.1 跨域拦截 2.2 实现跨域数据请求 3. JSONP 3.1 JSONP 实现 ...

最新文章

  1. CNN可视化最新研究方法进展(附结构、算法)
  2. Spring切点表达式常用写法
  3. 利用open***建立桥接***[zt]
  4. CSS3否定伪类选择器
  5. enter对应的keycode_vue 添加enter回车事件
  6. LeetCode解题思路—双指针模式
  7. 我坚决不能容忍_出轨坚决不能忍,3星座女对出轨0容忍,敢出轨就等着吧
  8. python爬虫数据分析案例-Python 爬虫和数据分析实战
  9. 【Maven】运行项目
  10. (1)-(Two SUM-在数组中找到两个数,他们的和为给定的数)-(数组遍历)
  11. 『WPF』DataGrid的使用
  12. 计算机自带pdf吗,PDF是什么?怎么电脑上编辑PDF文件
  13. html页面上允许文字复制,网页上的文字无法复制?教你如何破除网页限制
  14. 给C盘释放五个G的空间
  15. 用cisco服务器添加html,在接入服务器上配置基本 AAA
  16. 三级等保 mysql8.0.24密码策略设置
  17. I want to do that you feel proud of me.
  18. mysql 3306无法访问_Mysql 3306端口无法被远程机器访问
  19. “知识共享”早期版本是什么样子?
  20. Java判断字符串是否为数字(正负、小数)

热门文章

  1. GPU Counter功能更新|支持Adreno、PowerVR芯片
  2. 【CUDA开发】CUDA的安装、Nvidia显卡型号及测试
  3. 文字点选验证码的破解方法~
  4. 关于win10 睡眠或关屏恢复后卡顿的问题
  5. 有趣吧–中国最大的在线制作漫画社区 开站了
  6. 20170925-2 功能测试
  7. 基于java的个人日程管理系统mysql
  8. 达梦数据库忘记SYSDBA密码的问题探讨
  9. 利用python将某列修改成另一列
  10. 8086CPU学习笔记:8086的寻址方式