1

選択クエリ用に 40 列と数千行、更新用に数行/列の巨大な単一テーブルからデータを取得する Web アプリケーションを設計する必要があります。

パフォーマンスを高速化するために、Hibernate の使用が可能かどうかを教えてください。テーブルが 1 つしかなく、結合がないためです。または、 jdbc dao を使用する必要がありますか?

データベース: SQL Server 2008 Java 7

4

2 に答える 2

1

Hibernate を正しく使用すれば、任意のサイズの結果セットをフェッチしても問題ありません。クエリを避けfromて (select ... from ...クエリを使用)、 を使用してScrollableResultsください。プレーンな JDBC を使用すると、最初に Hibernate を構成する必要があり、マッピング ファイルを作成する必要があるため、より迅速に開始できます。Hibernate は、クライアント コードからボイラープレートを取り除くのに非常に優れています。

于 2012-04-12T13:01:40.027 に答える
0

数千件のレコードを取得する必要があり、ページネーションができない場合は、パフォーマンスの問題である可能性があります。Hibernate は全員に対してオブジェクトを作成し、それを永続コンテキストに格納するためです。作成するオブジェクトが多すぎると、大量のメモリが消費されます。これらのタイプの操作には、JDBC の方が適しています。同様の議論については、巨大なデータベースを使用した Hibernate のパフォーマンスの問題を参照してください。

于 2012-04-12T12:37:10.353 に答える