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 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]

转载请注明来源: http://blog.csdn.net/attilax

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()

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<DBX>() {

@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 版本

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

时间: 2024-10-19 05:04:17

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

Atitit&#160;插件机制原理与设计微内核&#160;c#&#160;java&#160;的实现attilax总结

Atitit 插件机制原理与设计微内核 c# java 的实现attilax总结 1. 微内核与插件的优点1 2. 插件的注册与使用2 2.1. Ioc容器中注册插件2 2.2. 启动器微内核启动3 3. 插件的俩种执行策略3 3.1. 必须手动接续,否则自动终止(推荐)3 3.2. 必须手动throw  stop ex终止,负责自动接续..4 4. 插件链的生成原理4 5. -------code4 6. 参考7 1. 微内核与插件的优点 但凡有生命力的产品,都是在扩展性方面设计的比较好的,因

atitit.atiOrmStoreService&#160;框架的原理与设计&#160;part1&#160;&#160;概述与新特性

atitit.atiOrmStoreService 框架的原理与设计 part1  概述与新特性 1. 新特性如下 支持生成sql在无数据库连接的情况下 2. Orm设计 主要的俩个以来service如下 @Inject Dsl2sqlService dsl2sqlSvr; @Inject DBX dbSvr; 作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:[email protec

Atitit.异步编程技术原理与实践attilax总结

1. 俩种实现模式 类库方式,以及语言方式,java futuretask ,c# await1 2. 事件(中断)机制1 3. Await 模式(推荐)1 4. Java的实现模式futuretask 对于c#的task类库(推荐)1 4.1. 使用Java 8的CompletableFuture实现函数式的回调.htm2 5. Timer模式2 6. Thread模式(不推荐,太底层)2 1. 俩种实现模式 类库方式,以及语言方式,java futuretask ,c# await 2. 事

Atitit ati&#160;licenseService &#160;&#160;&#160;设计原理

Atitit ati licenseService    设计原理 C:\0workspace\AtiPlatf\src_atibrow\com\attilax\license\LicenseX.java V1 更具时间超是 V2   按照时间慢的百分率.. V3 草案.. Laicense file ,hto sh aes time.. Invoke System.out.println( licenseX.isCanUse_byUsePercent("2016-05-01") );

Atitit.html css &#160;浏览器原理理论概论导论attilax总结

Atitit.html css  浏览器原理理论概论导论attilax总结 1.1. 浏览器是怎样工作的:渲染引擎,HTML解析(连载二)1 2. 5.1.1 DOM标准 1011 3. <WebKit技术内幕>(朱永盛...)[简介_书评_在线阅读] - .html2 4. HTML5与CSS3权威指南(第3版 上册)2 5. HTML5权威指南[非常全面详实的网页设计参考书]3 6. 深入理解Android:WebKit卷4 1.1. 浏览器是怎样工作的:渲染引擎,HTML解析(连载二)

Atitit.面向接口的web&#160;原理与设计重写&#160;路由启动绑定配置url&#160;router&#160;rewriting&#160;urlpage&#160;&#160;mvc&#160;mvp的&#160;java&#160;c#.net&#160;php&#160;js

Atitit.面向接口的web 原理与设计重写 路由启动绑定配置url router rewriting urlpage  mvc mvp的 java c#.net php js 原理 通过vm带入启动参数    制定ioc配置文件 绑定各项.. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <ifra

atitit. 日志系统的原则and设计and最佳实践(1)-----原理理论总结.

atitit. 日志系统的原则and设计and最佳实践总结. 1. 日志系统是一种不可或缺的单元测试,跟踪调试工具 1 2. 日志系统框架通常应当包括如下基本特性 1 1. 所输出的日志拥有自己的分类. 2 2. 日志按照某种标准分成不同级别. 2 3. 支持多线程. 2 4. 稳定性. 2 3. 一个理想的日志模式 2 4. 判断指定的方法是否被调用了 3 5. 给方法的输入输出加上日志通过Aop 3 6. 日志易读,易解析  对日志感兴趣的可以分为两类: 3 7. 输出日志使用的性能 3 8

Atitit。Time&#160;base&#160;gc&#160;垃圾&#160;资源&#160;收集的原理与设计

Atitit.Time base gc 垃圾 资源 收集的原理与设计 1. MRC(MannulReference Counting手动 retain/release/autorelease语句1 2. 自动垃圾回收(GC)1 3. Arc ARC介于自动垃圾回收(GC)和手动内存管理之间.1 3.1. 从各种垃圾收集算法最基本的运行方式来说,大概可以分成三个类型: 1. 引用计数(reference counting):1 3.2. 标记-清扫(mark-sweep)2 3.3. 3. 节点复

Atitit.&#160;数据约束&#160;校验&#160;原理理论与&#160;架构设计&#160;理念模式java&#160;php&#160;c#.net&#160;js&#160;javascript&#160;mysql&#160;oracle

Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle 1. 主键1 2. uniq  index2 3. 检查约束 (Check Counstraint) 对该列数据的范围.格式的限制(如:年龄.性别等)2 4. 默认约束 (Default Counstraint) 该数据的默认值2 5. trigger2 6. 外键机制  参照完整性:2 7. 断言约束:不必与特定的列绑定,可以理解为能应用于多个表的