ホームページ  >  記事  >  Java  >  JSP で ResultSet をページ分割されたビューに効率的に変換するにはどうすればよいですか?

JSP で ResultSet をページ分割されたビューに効率的に変換するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-24 07:19:30963ブラウズ

How to Efficiently Convert ResultSet to Paginated View on JSP?

ResultSet を JSP のページ分割されたビューに変換する

ResultSet オブジェクトを JSP のページ分割されたビューに効果的に変換するには、以下を導入することが不可欠です追加のリクエストパラメータ: firstrow と rowcount。最初のパラメータはページネーションの開始レコードを定義し、2 番目 (オプション) パラメータは 1 ページに表示するレコード数を指定します。

ページネーション ボタンの作成

次に、JSP には、結果内のナビゲーションを容易にするページネーション ボタンを含める必要があります。 「次へ」ボタンは firstrow の値を rowcount だけ増加させ、「前へ」ボタンはそれに応じてそれを減少させます。適切な境界を設定して、負の値とオーバーフローを正しく処理することが重要です。

特定の SQL クエリを使用してサブリストを取得する

結果の特定のサブセットを取得するには、次のことが必要です。変更された SQL クエリを実行します。このクエリの正確な構文は、使用されているデータベースによって異なります。

MySQL および PostgreSQL:

<code class="sql">SELECT id, username, job, place FROM contact ORDER BY id LIMIT %d OFFSET %d;</code>

Oracle:

<code class="sql">SELECT id, username, job, place FROM (SELECT id, username, job, place FROM contact ORDER BY id) WHERE ROWNUM BETWEEN %d AND %d;</code>

DB2:

<code class="sql">SELECT id, username, job, place FROM (SELECT row_number() OVER (ORDER BY id) AS row, id, username, job, place FROM contact) AS temp WHERE row BETWEEN %d AND %d;</code>

CSS/JavaScript および JSP

サブリストは、JSTL の c を使用して JSP に表示されます。 :それぞれ。最後に、ページネーション機能を処理するためのフォームが提供されています。

メモリの非効率性の回避

ページネーション用のデータを選択的に取得することで、データを保存するという非効率なアプローチを回避できることに注意することが重要です。テーブル全体の結果はセッション スコープ内で、List#subList() を使用します。この方法により、特に大規模なデータセットと同時ユーザーが存在するシナリオでメモリ効率が確保されます。

以上がJSP で ResultSet をページ分割されたビューに効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。