1

私はJavaアプリケーションを持っています:

a。サーバー側-Swingアプリケーション(クライアント要求を出力するためだけに、jTextAreaを使用してサーバーのGUIを作成しました)

b。クライアント側-Swingアプリケーション

サーバー側には、いくつかのベクトルにデータを格納するビジネスレイヤーがあります。

ここで、クライアント側のSwingアプリケーションに加えて、bl内のベクトルからの同じデータを表す必要があるWebアプリケーションを作成する必要があります。

私の質問は、新しいWebプロジェクトを開いた場合、サーブレットはblからデータを取得する方法です。これは、プロジェクトが異なるためです。サーバー側がサーブレットからの要求をリッスンする可能性はありますか?それら(サーブレットとサーバー(a))がソケットを介して通信する可能性はありますか?

4

2 に答える 2

2

新しいWebプロジェクトを作成するのが最善の方法だと思います。WebページのGUIにいくつかのボタンがあります。いくつかのボタンがクリックされたときに、彼をサーブレットにリダイレクトします。これで、サーブレットはソケットを介してサーバー側と通信し、BLに関するデータを取得します。サーブレットがこのデータを受信したら、新しいWebページを作成してデータを表示します。

于 2012-08-18T11:53:00.183 に答える
1

したがって、ビジネスロジックを別のメディア(この場合はHTTP)に公開する必要があります。かなりの数のオプションがあります。サーブレット(TomcatやJettyなどの実行に何らかのサーブレットコンテナが必要)を使用することで、セッション管理、スレッドプールなどの多くの優れたサーバー機能を利用できます。 HTTP通信も受け入れるように既存のサーバーを変更しようとすると、自分で実装しない限り、これらを見逃してしまいます。

したがって、あなたのアーキテクチャに対する私の推奨事項は次のとおりです。

ビジネスロジックをWebサービスの背後に配置します(サーブレットを使用して実行できます)。したがって、HTTP通信を理解し、それらの優れた機能を取得します。次に、Swingクライアントを変更して、HTTPリクエストを使用して新しいWebサービスと通信します。

于 2012-08-17T23:09:33.460 に答える