0

現在、Eclipse で非常に基本的なデスクトップ Java アプリケーションを使用しています。これは、Google App Engine 上の既存のプロジェクトのデータストアにエンティティを追加することを目的としています。これですべての設定が完了しましたが、Google App Engine を初めて使用するので、アプリケーションでエンティティを既存のプロジェクトのデータストアに送信する方法がわかりません。

これをオンラインで調べてみましたが、見つけたもののほとんどはJava Webアプリケーションを作成するためのものでした. 私の目標は、アプリケーションをブラウザー経由ではなく、独自のアプリケーションとして実行することです。

では、アプリケーションを GAE データストアに接続するにはどうすればよいでしょうか? 入力する必要があるコードや、プロジェクト内に必要な xml ファイルはありますか? Google App Engine 用の Java Eclipse プラグインを使用しています。

助けてくれてありがとう!

4

2 に答える 2

1

あなたの質問の言語に基づいて、特定のコードではなく、全体像のような答えが本当に必要だと思います. したがって:

デスクトップ アプリケーションがあります。これは、一部のデスクトップ コンピューターで実行されます。

データ ストアを備えた Google App Engine アプリケーションがあります。これは、Google のデータ センターで実行されます。

これらは同じコンピューターではありません。したがって、彼らは何らかの方法でネットワークを介して通信する必要があります — それはあなたが探している欠けている部分です.

GAE は Web アプリケーションを実行するように設計されているため、これを「Web サービス」の状況と考えることをお勧めします。つまり、デスクトップ アプリケーションが GAE アプリケーションに対して HTTP 要求を行います。(クライアントとサーバーの両方を作成しているため、状況は一般的なケースよりも単純化されています。)

簡単な Web サービスの設計について読んで、自分のアプリケーションに合うと思われるものを何でも実行することをお勧めします。


1 つの重要な警告: GAE アプリケーションに1 人のユーザーしかいない場合を除き、HTTP 経由でデータ ストアにアクセスできるブリッジを単純に記述してはなりません。マルチプレイヤー ゲームの設計で言われているように、クライアントを信頼しないでください。つまり、アプリケーションのルールに従って意味のあるネットワーク リクエストのみを受け入れ、クライアントがそれらのルールを強制することを期待しないでください。これは、デスクトップ アプリケーション以外の何かを使用して、誰でも GAE アプリケーションにリクエストを行うことができるためです。これがインターネットの基本的な性質です。

たとえば、ユーザーがアプリケーションを使用して相互に対話しないマルチユーザー アプリケーションの単純なケースでは、これは、たとえばレコードを更新するすべての要求が、ログインしているユーザーに属するレコードのみを更新する必要があることを意味します。 user、他のユーザーの 1 人ではありません。

于 2013-06-20T02:42:12.670 に答える