2

ウェブページのモバイル版を作成しようとしています。そのページでは、完全にエンティティ指向ではなく、サービスの方法で RPC サービスを使用しました。したがって、2 つのクライアント (Web とモバイル) が 1 つのサーバーを呼び出すことになります。

ここで、複数のクライアント バージョンをサポートするすべてのサーバー コードを再利用し、RPC 呼び出しが持つ「dto バージョン地獄」をすべて回避したいと考えています。

メソッドをモバイル バージョン (GWT+phonegap および将来的には IOS、Android...) に公開するために、サーバー内の別のレイヤーであるラッパーを作成する必要があることがわかりました。後で、このレイヤーはすべてのサーバー コード (モデル、リポジトリなど) を再利用します。サーバーでは、BigTable へのアクセスは Objectify を介して行われます。

この新しいレイヤーにはどのテクノロジーを使用しますか?

4

1 に答える 1

2

モバイルアプリの場合、クライアントで AutoBeans + RequestBuilder を使用し、サーバー側で JSON を生成する AutoBeans と Restful API を使用します。

AutoBeans では、Java インターフェイスを使用してデータの構造を定義します。(これにより、プログラムに対する何かが得られます)、AutoBeans は、オブジェクトから JSON への変換、および JSON からオブジェクトへの変換を、サーバーとクライアントでも処理します。

組み合わせることで、非常に高速で優れたアーキテクチャの RPC を構築できます。AutoBeans は、シリアライゼーションのデフォルトのメカニズムとして RequestFactory によって使用されます。

他のプラットフォームをサポートすることに決めた場合でも、JSON を使用してそこで解析できます。ネイティブ android アプリケーションをサポートすることにした場合、AutoBean メカニズムは android vm で正常に動作するはずです。

AutoBeans の良い例は、http ://code.google.com/p/google-web-toolkit/wiki/AutoBean にあります。

于 2013-02-09T16:48:12.577 に答える