0

アプリケーションで jxl.jar を使用して、Excelsheet から Oracle 10g にデータを Java で移植しようとしています。最近、移植画面に複数のビジネス検証が追加されました。移植プロセスが非常に遅くなり、オラクルにアップロードされたデータが最終的に、またはいくつか例外が発生しました (タイムアウト例外)。500 レコード未満の Excel シートは、正常に動作していることを意味します。500 レコードを超える場合、問題に直面していることを意味しますか? java? を使用してデータをアップロードする方法に従ってください。

編集:JDBC Batch.Firstを使用しています.まず、Excelシートのすべてのレコードのビジネス検証をチェックしています。すべての条件を満たしてからバッチを実行すると、画面自体にエラーがスローされます。

4

2 に答える 2

0

あなたは jxl を使って正しい道を進んでいると思います (私はApache POIを好むでしょう)。大量のデータを挿入し、たとえば 500 エントリごとにコミットする場合は、バッチ処理を使用する必要があります。

さらに、Excel ファイルからすべてのデータをメモリにロードしてからデータベースに追加しないでください。代わりに、Excel から最初の 500 行を読み取り、それらをデータベースにコミットしてから、次の 500 行に進みます。

于 2012-06-08T09:29:35.653 に答える
0

1 つの方法として、Excel シートから CSV をエクスポートし、その CSV データを Oracle テーブルにインポートすることができます。私はそれが効率的であることがわかりました。

ここにスターター スレッドがあります: http://www.velocityreviews.com/forums/t387780-populate-oracle-table-with-values-in-csv-using-java.html

于 2012-06-08T09:31:01.813 に答える