当前位置:Gxlcms > PHP教程 > atitit.php中的dwr设计模式

atitit.php中的dwr设计模式

时间:2021-07-01 10:21:17 帮助过:18人阅读

atitit.php中的dwr 设计模式

1. dwr的优点相对于ajax来说。。 1

2. DWR工作原理 1

3. php的dwr实现 1

4. 参考 3

1. dwr的优点相对于ajax来说。。

dwr是构建在ajax上的。。更加的dsl化。。

大大简化了编写ajax的工作量。

2. DWR工作原理

是通过动态把Java类生成为Javascript。它的代码就像Ajax一样,你感觉调用就像发生在浏览器端,但是实际上代码调用发生在服务器端,DWR负责数据的传递和转换。这种从Java 到JavaScript的远程调用功能的方式使DWR用起来有种非常像RMI或者SOAP的常规RPC机制,而且DWR的优点在于不需要任何的网页浏览器插件就能运行在网页上。

Java从根本上讲是同步机制,然 AJAX却是异步的。所以你调用远程方法时,当数据已经从网络上返回的时候,你要提供有反调 (callback) 功能的DWR。

DWR在客户端放置了一个 engine.js作为客户端的引擎,在Server端放置了一个dwr.jar作为服务器端的引擎。

然后,可以以RPC的方式来描述

作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com

3. php的dwr实现

var mp={};

// mp.id=85495; frm cookie

mp.method="get-score";

dwrC.exec(mp,function(data){

//if ex then to ex process hadler

/* if(data)

alert("不能编辑,已经审核通过");

else

window.location.href="elemt_edit.jsp?id="+str;*/

$("#score").text(data+"分");

$("#score-detail").text( "您的育儿指数总算及格了,还要继续....");

},"/lime");

--------------dwr.js

var dwrC={};

dwrC.exec=function(param,callback,approot)

{

//jQuery.get("dwr.php?param="+param, [data], [callback])

$.ajax(

{

type: "get",

url: approot+"/com.attilax/dwr.php",

data:param,

dataType: "text",

success: function(data) {

// $("#divShow").html(data);

callback(data);

}

});

}

-------------dwr.php

require_once(dirname(__FILE__).'/../iocx.php');

//$dwrEventContainer['b'] = 'char b';

$method= $_GET['method'];

$fun=$dwrEventContainer[ $method];

$rzt=$fun($method);

echo $rzt;

?>

------------iocx.php

$dwrEventContainer = array(); //定义一个数组

$dwrEventContainer['get-score'] =getScoreX;

4. 参考

DWR 工作原理 - ITeye问答.htm

版权声明:本文为博主原创文章,未经博主允许不得转载。

人气教程排行