ホームページ >バックエンド開発 >PHPチュートリアル >Atitit.ati dwr の原則と設計 attilax の概要 java php バージョン

Atitit.ati dwr の原則と設計 attilax の概要 java php バージョン

WBOY
WBOYオリジナル
2016-06-13 12:23:521049ブラウズ

Atitit.ati dwr の原理と設計 attilax の概要 java php バージョン

Atitit.ati dwr の原理と設計設計 attilax 概要 java php バージョン

1dwr の利点。 🎜> ajax。 。 1

2 3Dwr のアーキテクチャ

2

4カスタマイズされた dwr または ネイティブ dwr

2 5ApiHandlerメソッド

26Invok .. Dwr.exe()2

7 >

89。 >--------コード

410. ApiHandler

4112.

5

1. dwr

利点は

ajax

と比較されます。 。

dwr

ajax

上に構築されています。 。さらに

DSL

化。 。

ajax を記述する作業負荷を大幅に簡素化します。

2. DWR動作原理

は Java クラスを Javascript に動的に生成します。そのコードは Ajax に似ています。呼び出しがブラウザ側で行われるように見えますが、実際にはコードの呼び出しはサーバー側で行われ、DWR がデータの送信と変換を担当します。この Java から JavaScript へのリモート呼び出し機能により、DWR は RMI や SOAP とよく似た従来の RPC メカニズムを使用できるようになり、DWR の利点は、Web ブラウザーのプラグインなしで Web ページ上で実行できることです。

Java は基本的に同期メカニズムですが、AJAX は非同期です。したがって、リモート メソッドを呼び出すとき、データがネットワークから返されたときに、DWR にコールバック関数を提供する必要があります。

DWR は、engine.js をクライアントのエンジンとしてクライアント側とサーバー側に配置します。 dwr.jar はサーバー側のエンジンとして機能します。

すると、RPC 的に記述できます

著者::老Wow's Claw Attilax Ailong、メールアドレス:[email protected]

転載する場合は出典を明記してください: http://blog.csdn.net/attilax

3. Dwr アーキテクチャ

Dwr>

4. カスタマイズされたdwrまたは ネイティブ dwr

ネイティブ dwr設定ファイルを修正する必要があります面倒..カスタマイズdwr使いやすい..

5. の標準化ApiHandlerメソッド

SQL

選択...$meta{table,orderby}, f1,f2

更新/挿入/マージ ....$meta{テーブル} ,f1----f12

削除....$meta{テーブル } ,f1----f12 (ここで)

6. 呼び出し..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

<[email protected] import="com.attilax.api.HandlerChain"%>

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

<[email protected] import="com.attilax.api.HandlerChain"%>

<[email protected] import= "com.attilax.api.ApiHandler"%>

<[email protected] import="aaaCfg.IocX"%>

<%

if(request.getParameter("メソッド")!=null)

{

}

%>

<%

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

%>

<%=ax.handleReq_dsl(request)%>

9. ----------コード

10. ApiHandler

@Inject

DBX dbx;

public ApiHandler () {

これ.reg("sql",new Handler() {

@オーバーライド

public Object handleReq(Object arg) throws例外 {

// attilax 老哇的爪子 l_43_u o87

HttpServletRequest req=(HttpServletRequest) arg ;

リスト li = dbx.findBySql(req.getParameter("param"));

return core.toJsonStrO88();

}

});

public String handleReq_dsl(HttpServletRequest req) {

文字列 meth =req.getParameter("メソッド");

ハンドラーhd=(ハンドラー)mp.get(meth);

try {

return (文字列) hd.handleReq( req);

} catch (例外 e) {

// TODO 自動生成されたキャッチ ブロック

e.printStackTrace();

}

戻る 覚醒剤;

}

11. iocx

bd.bind(DBX.クラス).toProvider(new プロバイダ() {

@オーバーライド

public DBX get() {

DataSource ds = (DataSource) SpringUtil

. getBean("dataSource");

試してください {

return new DbutilX( ds.getConnection());

} catch (SQLException e) {

// TODO 自動生成 catch ブロック

e.printStackTrace();

}

戻る null;

}

});

12. リファレンス

atitit.phpdwr デザインパターン - attilax のコラム - ブログチャンネル - CSDN.NET.html

Atitit.dwr3 エラー詳細の表示に失敗した場合の解決策 、エラー詳細を表示する コントロールの解決策 java .net php - attilax のコラム- ブログ チャンネル - CSDN.NET.html

活動。 ati dwrの原理 attilax 概要 java php バージョン

著作権表示: この記事はブロガーによるオリジナル記事であり、複製することはできませんブロガーの許可なしで。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。