sql >> データベース >  >> RDS >> Mysql

GWTデータベース-RPCなしのアクセス

    gwtを使用してMySQLに直接アクセスできない理由は2.5あります。

    理由#1.GWTがJavascriptにコンパイルされています。データベースサーバーへのソケットを開く必要があります。 GWTでは、ソケットを開くことはできません。実際、拡張されていないブラウザ(html5が登場する前)はソケットを開くことができません。ただし、FlashactionscriptまたはHTML5javascriptを使用してソケットを開くことができます。

    理由#2.OK、HTML5ソケットを使用したとしましょう。そして、JavascriptでJDBC接続を作成するのに6か月を費やしました。ただし、WebSocketはサーバー上のサーブレットをアドレス指定する必要があります。これにより、WebSocketは永続的な接続を確立でき、mysqlはそのような確立を実行できません。

    理由#3.SLD-SOP制限:(セカンドレベルドメイン同一生成元ポリシー)標準ブラウザーは、サーバーと同じセカンドレベルドメイン(SLD)内のコンテンツのみを要求し、含めることができるようにページを制限します。そのページをブラウザに提供しました。トップレベルドメイン(およびトップレベルと半分)は、.com、.org、.net、.me.us、.co.ukなどです。したがって、google.com、fbi.gov、mit.eduなどのドメイン名はセカンドレベルドメインです。一方、mail.google.comは第3レベルドメインになります。したがって、GWTはSLDの範囲内でのみ機能します。 Webサーバーは、mysqlサーバーと同じSLDでもアクセスできる必要があります。

    SLD-SOPとトンネリングの要件は、tom-rick-or-maryがブラウザからシステムにログインすることを可能にする可能性のあるセキュリティホールを閉じることです。ブラウザがhttpサーバー以外のサーバーに接続するには、常にトンネリングが必要です。トンネリングとは、ブラウザがWebサーバーをyenta(busy-body / go-between / match-makerのイディッシュ語)として悪用して、別のサーバーにアクセスすることです。

    GWT-RPCを使用する以外に選択肢はありません。おそらく、RPCを使用したくない場合は、RequestBuilder、またはScript-IncludeまたはRequestFactoryを使用できます。しかし、それらはすべてまだトンネリングの多様な手段です。 http://h2g2java.blessedgeek.com /2011/06/gwt-requestbuilder-vs-rpc-vs-script.html

    gwtクライアントからデータベースサーバーに接続できる理由は1つあります。データベースサーバーはhttpd接続エンジンを実行する必要があります。つまり、gwtアプリはhttpからdbサーバーにアクセスします。どのリレーショナルデータベースでhttpアクセスが利用できるのかよくわかりません。ほとんどの場合、throxmlまたはjsonをクエリする必要があります。

    しかし、私が働いていた会社は、「直接」クライアントアクセスを許可する独自のhttpサービスを作成しました。 tomcatを使用したため、「直接」は誤称です。スティルトンネリングです。 「直接」httpアクセスを提供するデータベース会社はまだトンネリング中です。トンネリング-そこから逃れることはできません。

    GWTを使用する代わりに、ブラウザーをFlashで拡張し、Flashアプリケーションを作成することができます。直接アクセスが非常に重要な場合は、GWTを放棄してFlashで開発し、データベースサーバー用にhttpdエンジンを実行する必要があります。



    1. フルスタック(WAMP)を使用したReactをローカルで開発する

    2. TNSPINGはOKですが、sqlplusはORA-12154を提供しますか?

    3. pyodbcとmySQL

    4. MySqlは、ある行から別の行に値をコピーします