• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Atitit.ati?dwr的原理and设计?attilax?总结?java?php?版本

php 搞代码 3年前 (2022-01-23) 22次浏览 已收录 0个评论

Atitit.ati dwr的原理and设计 attilax 总结 java php 版本

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

2. DWR工作原理 1

3. Dwr的架构 2

4. 自定义dwr还是native dwr 2

5. ApiHandler的标准化method 2

6. Invok.. Dwr.exe() 2

7. api.jsp 3

8. prj.Wxb distribu api.jsp 3

9. ———-code 4

10. ApiHandler 4

11. iocx 5

12. 参考 5

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:[email protected]

3. Dwr的架构

Dwr>>ajax>>>api.jsp

4. 自定义dwr还是native dwr

Native dwr要修正配置文件了.麻烦的..自定义dwr好使用的..

5. ApiHandler的标准化method

Sql

Select… $meta{“table”,orderby}, f1,f2

Update/insert/merger ….$meta{“table”} ,f1—-f12

Delete….$meta{“table”} ,f1—-f12 (where)

6. Invok.. Dwr.exe()

%本文来源gaodai#ma#com搞*代#码9网#搞gaodaima代码var mp={“method”:”sql”,”param”:”select * from wxb_news where news_id=”+UrlParm.parm(‘news_id’)};

dwrC.exec(mp,function($data){

jo=str2json($data);

arr= jo;

 $(“#table1_tmpl”).tmpl(arr).appendTo(‘#table1’);

$(“#table1_tmpl”).hide();

},$app_path);

7. api.jsp

* localhost:8080/wxb/api.jsp?method=sql¶m=select * from wxb_news

8. prj.Wxb distribu api.jsp

<%@page import=”com.attilax.api.HandlerChain”%>

<%@ page contentType=”text/html; charset=utf-8″ language=”java” import=”java.sql.*” %>

<%@page import=”com.attilax.api.HandlerChain”%>

<%@page import=”com.attilax.api.ApiHandler”%>

<%@page import=”aaaCfg.IocX”%>

<%

if(request.getParameter(“method”)!=null)

{

}

%>

<%

ApiHandler ax = IocX.getBean(ApiHandler.class);

%>

<%=ax.handleReq_dsl(request)%>

9. ———-code 10. ApiHandler

@Inject

DBX dbx;

public ApiHandler() {

this.reg(“sql”, new Handler() {

@Override

public Object handleReq(Object arg) throws Exception {

// attilax 老哇的爪子 l_43_u o87

HttpServletRequest req=(HttpServletRequest) arg;

List li = dbx.findBySql(req.getParameter(“param”));

return core.toJsonStrO88(li);

}

});

public String handleReq_dsl(HttpServletRequest req) {

String meth=req.getParameter(“method”);

Handler hd=(Handler) mp.get(meth);

try {

return (String) hd.handleReq(req);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return meth;

}

11. iocx

bd.bind(DBX.class).toProvider(new Provider() {

@Override

public DBX get() {

DataSource ds = (DataSource) SpringUtil

.getBean(“dataSource”);

try {

return new DbutilX(ds.getConnection());

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return null;

}

});

12. 参考

atitit.php中的dwr 设计模式 – attilax的专栏 – 博客频道 – CSDN.NET.html

Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php – attilax的专栏 – 博客频道 – CSDN.NET.html

Atitit.ati dwr的原理and设计 attilax 总结 java php 版本

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


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Atitit.ati?dwr的原理and设计?attilax?总结?java?php?版本

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址