zoukankan      html  css  js  c++  java
  • Atitit.ati dwr的原理and设计 attilax 总结 java php 版本号

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

     

     

    1dwr的长处相对于ajax来说。。

    1

    2DWR工作原理 1

    3Dwr的架构 2

    4自己定义dwr还是native dwr 2

    5ApiHandler的标准化method 2

    6Invok..  Dwr.exe() 2

    7api.jsp 3

    8prj.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一样。你感觉调用就像发生在浏览器端,可是实际上代码调用发生在server端。DWR负责数据的传递和转换。这样的从Java 到JavaScript的远程调用功能的方式使DWR用起来有种很像RMI或者SOAP的常规RPC机制,并且DWR的长处在于不须要不论什么的网页浏览器插件就能执行在网页上。 

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

     

     

    DWR在client放置了一个 engine.js作为client的引擎,在Server端放置了一个dwr.jar作为server端的引擎。 

    然后,能够以RPC的方式来描写叙述

     

     

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

    转载请注明来源: 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/htmlcharset=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 argthrows 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 版本号

     

  • 相关阅读:
    linux下Boost序列化问题解决
    树莓派搭建基于flask的web服务器-通过移动端控制LED
    unison+inotify
    员工为什么会离职 (转)
    编译安装 Centos 7 x64 + tengine.2.0.3 (实测+笔记)
    Cassandra 原理介绍
    使用Go语言编写区块链P2P网络(译)(转)
    缓存击穿举例
    Cassandra 原理介绍
    Go学习之路
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/7252147.html
Copyright © 2011-2022 走看看