4

GUI アプリケーションでデータベース要求を処理しているプログラマーは、次の問題の一部またはすべてに遭遇したことがあると思います。

  • イベント ディスパッチ スレッド内からデータベース レイヤーを呼び出すため、GUI がフリーズします。
  • ユーザーがdbリクエストを開始できる複数のウィンドウ/パネル/jframeがある場合、ユーザーが作成するスレッドを制御できないため、パフォーマンスが低下します
  • ユーザーは、最初のアクションが完了する前にアクションを何度も呼び出すため、アプリケーションやデータベースをロックダウンできる可能性があります

私が知りたいこと: イベント ディスパッチ スレッドの外部で実行時間の長いアクション (データベース呼び出し、つまり計算を含むがこれに限定されない) の順序付けられたセットを処理する要件を処理するフレームワークはありますか?

注: 私は SwingWorker を知っています ;-)

4

3 に答える 3

2

ネイキッド オブジェクトはクリーンなドメイン モデルを促進し、GUI 2 DB マッピング レイヤーも備えています -- http://www.nakedobjects.org/home/index.shtml

于 2008-09-27T18:09:28.607 に答える
1

データベースリクエストに固有の何かが見つかるとは思えません。既存の汎用タスクスケジューリングライブラリの再利用を試みることができます。例として、EclipseジョブAPIがあります。これはIDEに依存しません。

http://www.eclipse.org/articles/Article-Concurrency/jobs-api.htmlを参照してください

于 2008-09-27T11:22:05.697 に答える
1

そのようなことは、たとえば Netbeans に見られるはずです。RequestProcessor を参照してください。しかし、より単純なケースでは、これは必須ではありません。前回、スレッドのスケジューリングや制御のようなものが必要になったときは、J5 に含まれる新しい同時実行パッケージを使用しました (私は J6 を使用しました)。その ExecutorFactory を使用すると、タスクの基本的な制御を簡単に実現できます。一部のキューを使用することもできます。この PDF が役に立ちます。PDF はスロバキア語で書かれていますが、シングル/マルチタスク ワーカーは Java で書かれています ;)

于 2008-09-27T14:07:57.890 に答える