Ajax牛刀小试

原创 2006年06月14日 00:17:00
使用了DWR框架,将数据库中城市列出在页面上

step1)web.xml中的配置

<servlet>
  <servlet-name>dwr-invoker</servlet-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>

step2)dwr.xml

<!DOCTYPE dwr PUBLIC
    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
    "http://www.getahead.ltd.uk/dwr/dwr10.dtd">

<dwr>
    <allow>
       
        <create creator="spring" javascript="SignupService">
            <param name="beanName" value="signupService" />
            <param name="location" value="applicationContext-baby-beans.xml" />
            <include method="loadGateway" />
        </create>
       
        <convert converter="bean" match="com.mofile.baby.domain.Area"/>
    </allow>


</dwr>



step3)测试页面
<html>
    <head>
        <script type='text/javascript' src='/dwr/interface/SignupService.js'></script>
        <script type='text/javascript' src='/dwr/engine.js'></script>
        <script type='text/javascript' src='/dwr/util.js'></script>
        <script type='text/javascript'>
            function showList() {
               
               
                SignupService.loadGateway (loadList);
               
                document.getElementById("xx").innerHTML ="loading....";
               
            }
           
            function loadList(data) {
              
               
               
                var list = data.arealist;
               
                var temparea;
               
                var listarea="";
               
                for(var i=0;i<list.length;i++){
                   
                    temparea = list[i];
                   
                    listarea = listarea + (i+1) +":" + temparea.name + "<br>";
                }
              
               
                document.getElementById("xx").innerHTML = listarea ;
               
               
               
            }
    </script>
    </head>

    <body>
        <INPUT type="button" value="ajax" onclick="showList();">
        <div id="xx">
        </div>
    </body>
</html>

总结如下:

dwr.xml非常值得关注,在dwr中你需要配置你的service,这样可以通过js远程调用service,另外如果你返回的数据包含一些非典型的 java数据结构,比如list,map之类的话,你必须在dwr.xml中配置,一个典型的情况是你返回领域对象。如果你不配置,异步返回的数据会出现空 数据,因为dwr框架不知如何转化。

说白了,dwr框架调用远程service(在dwr中配置),然后根据将service返回的java对象转化为js对象,如何转换就需要你配置dwr.xml来告诉框架。

dwr的使用很简单,确实简化了ajax的开发。而且其文档也很详细。

参考文档:dwr官方网站

相关文章推荐

cocos2dx学习笔记之牛刀小试1

  • 2014年09月02日 18:02
  • 182KB
  • 下载

【牛刀小试】——IIS配置

引言  首次接触牛腩新闻发布系统,这是我们从C/S过度到B/S的一个阶梯,就目前我对B/S来说算是一无所知,在之前在网上查询了一些关于这方面的知识,在表层对B/S有了一点认识,但是非常的浅。可是对于牛...

Jasperreport牛刀小试

  • 2017年02月09日 15:05
  • 132KB
  • 下载

STL入门第二篇——牛刀小试之史前时代转木取火

引子       如果你是一个纯粹的实用主义者,也许一开始就可以从这里开始看起,因为此处提供了一个示例程序,它可以带给你有关使用STL的最直接的感受。是的,与其纸上谈兵,不如单刀直入,实际操作一番。但...

MyBatis学习记录(1):牛刀小试,入门程序

终于开始学习三大框架了,首先从MyBatis入手。上学期学过一段时间Hibernate,不过学的并不好,当时被那些表之间的一对多,多对多关系搞的晕头转向。最后期末考试还好是四个人一组做课程设计,我就抱...

牛刀小试(一)——Windows系统下的JDK的安装及环境部署

Windows系统下JDK安装及环境部署 编辑 版本 时间 备注 杨晓东 8.0 2014.3.24 学术交流                   ...
  • yxd504
  • yxd504
  • 2014年03月25日 10:00
  • 429

Android开发牛刀小试之“AA算钱软件”开发(一)

其实想去做android开发已经有很长一段s
  • MSJ_CS
  • MSJ_CS
  • 2014年09月28日 09:49
  • 789

牛刀小试 - 浅析Java集合框架的使用

基本概述 Java中的集合框架与数组类似,都是用于存储多个同一类型数据的容器。 但是对于数组的使用,会因为数组本身的特性会导致一些使用限制,例如: 数组要求在构造时,就必须确定数组的长度...

IDF实验室·牛刀小试1-5

idf实验室 牛刀小试
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ajax牛刀小试
举报原因:
原因补充:

(最多只允许输入30个字)