2

LAN環境で実行されるJavaデスクトップアプリ(Swing GUIを使用)があります。通常、私はそれを多数のマシンで実行します。サーバーの役割を果たすマシンもあれば、クライアントとして機能するマシンもあります。

ここで、サーバーとクライアントの両方がWebサイトでホストされるインターネット上で同じアプリを実行して、Webサイトの訪問者がクライアントとして実行し、相互に対話できるようにします。

そのような移行に利用できるオプションは何ですか?JavaベースのWebフレームワークを使用して、すべてを最初から書き直す必要がありますか?もしそうなら、GUI部分をどのように扱うべきですか?それとも、アプリをアプレットとしてホストするだけですか?(私が制御できない個々の訪問者のマシンで追加のセットアップが必要になる可能性があり、互換性の問題が存在する可能性があるため、アプレットルートをたどるのはどういうわけか気が進まない)。ありがとう!

4

3 に答える 3

2

1 つのオプションは、Vaadinを使用することです。プログラミングの考え方は、JavaSE Swing に非常に近いものです。これはクライアント側の GWT 派生物ですが、ロジックは実際にはサーバー JVM 上にあり、フレームワークが通信 (xhr または Web ソケット) を処理します。

于 2015-02-14T15:18:16.100 に答える
1

Google Web Toolkit(GWT)は、一般的なJavaコードを再利用し、ブラウザーで実行するためにJavaScriptにコンパイルできるため、そのために役立つ可能性があります。私のアプリでは、サーバーで使用しているクライアントのクラスを再利用しています。UIはWebウィジェットを使用して再作成する必要がありますが、そのためのwysiwygツールが存在します。

双方向通信が必要な場合は、rawソケットをWebsocketに移行することもできます。

于 2012-04-04T19:07:25.237 に答える
1

コードが mvc パターンに従っている場合、モデルのものを再利用できるはずです。私のお気に入りの Java Web フレームワークは、Spring ソースのものです。Spring mvc (クリーンな mvc デザイン) または spring roo (より多くのコード生成を備えた Rails スタイルなど)。どちらも Dojo フレームワーク (ajax / gui など) とうまく統合できます。

于 2012-04-04T20:35:18.620 に答える