您好,欢迎访问一九零五行业门户网

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

atitit.ati dwr的原理and设计 attilax 总结 java php 版本
atitit.ati dwr的原理and设计 attilax 总结 java php 版本
1. dwr的优点相对于ajax来说。。1
2. dwr工作原理1
3. dwr的架构2
4. 自定义dwr还是native dwr2
5. apihandler的标准化method2
6. invok..  dwr.exe()2
7. api.jsp3
8. prj.wxb distribu   api.jsp3
9. ----------code4
10. apihandler4
11. iocx5
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]
转载请注明来源: http://blog.csdn.net/attilax
3. dwr的架构dwr>>ajax>>>api.jsp
4. 自定义dwr还是native dwrnative dwr要修正配置文件了.麻烦的..自定义dwr好使用的..
5. apihandler的标准化methodsql
select... $meta{“table”,orderby}, f1,f2
update/insert/merger ....$meta{“table”} ,f1----f12
delete....$meta{“table”} ,f1----f12 (where)
6. invok..  dwr.exe() 
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
html; charset=utf-8 language=java import=java.sql.*   %>
if(request.getparameter(method)!=null)
{
}
%>
apihandler ax = iocx.getbean(apihandler.class);
%>
9. ----------code10. 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 版本
版权声明:本文为博主原创文章,未经博主允许不得转载。
其它类似信息

推荐信息