DWR

 

     Ajax自从20052月份开始,逐渐风靡Web应用程序开发界。Ajax的应用确实提高了Web应用程序的数据传输效率,改善了用户体验,给Web应用程序开发带来了实实在在的好处。随着应用和开发的深入,不少组织和企业公布了其所创建并应用的Ajax框架。这些框架或者是通用性的,适用于各个Web应用程序解决方案;或者是针对性的,针对特定的Web应用程序解决方案;或者是针对某个Web应用程序开发框架,作为其有效补充。这些框架在Ajax的应用方式和应用方向、领域做出了有益的研究和探索,提出了各种实用的解决方案。了解和认识这些框架,将有助于对Ajax的机制、工作方式、应用方向和领域有进一步的了解和掌握。另外,如果你不想开发自己的Ajax开发框架,也可以从这些免费的开源的框架中选择适合自己业务需求的框架,这也有助于缩短开发周期,提高开发效率。

 

DWRDirect Web Remoting)是getahead公司开发的一个实现Ajax应用的框架。它允许客户端Javascript远程调用服务器端Java类的方法,执行相关的事务操作。本篇文章将从DWR简介、使用入门、适用范围等方面详细介绍DWR

 

 

DWR  Demo

 

新建一个webProject

 

复制  dwr开发包lib

复制到WEB-INF

web.xml中配置dwrservlet

<servlet>

  <servlet-name>dwrServlet</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>dwrServlet</servlet-name>

  <url-pattern>/dwr/*</url-pattern>

</servlet-mapping>

 

 

 

创建一个Time

package com.getTime;

 

import java.text.SimpleDateFormat;

import java.util.Date;

 

publicclass Time {

         public String getTime()

         {

               Date da=new Date();

                SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd  HH:mm:ss");

              return sf.format(da);

         }

 

}

 

 

dwr.xml 文件中

 

<!DOCTYPE dwr PUBLIC

    "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"

    "http://directwebremoting.org/schema/dwr20.dtd">

    <dwr>

        <allow >

                   <create javascript="test" creator="new">

                   <param name="class" value="com.getTime.Time"></param>

                   </create>

        </allow>

</dwr>

 

 

测试:http://localhost:8080/DwrProject/dwr/index.html

 

点击test  进入页面

 

找到

 

Execute 后面的返回值  是否正确

 

 

如果正确

 

 

复制  其中

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

放入所要运用的jsp界面

 

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <base href="<%=basePath%>">

   

    <title>My JSP 'index.jsp' starting page</title>

      <meta http-equiv="pragma" content="no-cache">

      <meta http-equiv="cache-control" content="no-cache">

      <meta http-equiv="expires" content="0">   

      <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

      <meta http-equiv="description" content="This is my page">

      <!--

      <link rel="stylesheet" type="text/css" href="styles.css">

      -->

       <script type='text/javascript' src='/DwrProject/dwr/interface/test.js'></script>

  <script type='text/javascript' src='/DwrProject/dwr/engine.js'></script>

  <script type='text/javascript' src='/DwrProject/dwr/util.js'></script>

 

      <script type="text/javascript">

      function getTime()

      {

           var time= document.getElementById("time");

           test.getTime(function(ret){

             time.innerHTML=ret;

           });

              setTimeout(' getTime()',1000);

      }

     

      </script>

     

  </head>

 

  <body onload="getTime()">

    <label id="time"></label>

  </body>

</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值