1

スタンドアロンの Java アプリケーションである自分のアプリに問題があります。コア Java、JDBC、および javafx 2.1 を使用しています。データベース内のテーブルに存在する行数をユーザーに表示する必要があります。そのために、私はSELECT COUNT(*) FROM SCHEMA.TABLENAME自分の Java コードを起動し、結果をtableView(javafx 2.1) に表示しています。私のデータベースには行数 (テーブル内の行数) が大きい多数のテーブルが含まれているため、このプロセスには多くの時間がかかります (30 分)。そのアプローチでは、私tableviewは立ち往生し、ユーザーはプロセスが終了するまで先に進むことができなくなります。私はThread.sleep()自分のコードで通常を使用しています。

ユーザーが他のタスクを実行できるように、プロセスをバックグラウンドで実行したいと考えています。プロセスが完了したら、ユーザーに通知する必要があります。javafx 2.1 非同期で試しましたが、問題を解決できませんでした。

javafx 2.1 でバックグラウンドでデータベースとやり取りするコードを教えてください。

よろしくお願いしますサラマット

4

1 に答える 1

1

JavaFX Concurrency TutorialのようにTaskを使用します。

これにより、メインの UI スレッドをブロックせずに、バックグラウンド スレッドでコードを安全に実行できます。

タスクを使用してデータベースにアクセスするためのサンプル コードを次に示します。

于 2013-03-25T15:44:09.300 に答える