結果セットに Java Concurrent ie Callable を適用したいと思います。シナリオは -
- JDBC を使用して DB にクエリを実行します。
- 結果セットを callable に送信して、別のファイルに書き込みます。
データが大きくなるので、結果セットにしたいと思います。問題に対するより良いアプローチを得るために私を助けてください。
結果セットに Java Concurrent ie Callable を適用したいと思います。シナリオは -
データが大きくなるので、結果セットにしたいと思います。問題に対するより良いアプローチを得るために私を助けてください。
ResultSetの設計方法により、多くのスレッドで同時に使用されることは想定されていません。ただし、結果セットを反復処理する1つのスレッドを作成し、行データをCallablesに送信して、各行(または行のグループ)をさらに処理することができます。
あなたはswingまたはjavaFXでプログラミングしていると思いますが、GUIスレッドをブロックしています。
そのため、jdbc リクエストを処理する別のスレッドを作成し、「お待ちください」メッセージを表示する必要があります。
次のようにします。
new Thread(new Runnable(){
void run(){
final result = jdbc.getResultSet();
// Under JavaFX 2
Platform.runLater( new Runnable() {
public void run() {
//Show results
}
} );
// Under Swing
SwingUtilities.invokeLater(new Runnable() {
public void run() {
//Show results
}
});
}
}
);