Maison  >  Article  >  Java  >  Comment obtenir une pagination ResultSet en Java pour un affichage efficace des données ?

Comment obtenir une pagination ResultSet en Java pour un affichage efficace des données ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-24 07:21:30365parcourir

How to Achieve ResultSet Pagination in Java for Efficient Data Display?

Pagination ResultSet en Java

Pour convertir un objet ResultSet en une vue paginée dans une JSP, suivez ces étapes :

1. Ajouter des paramètres de requête :

  • Ajoutez les paramètres "firstrow" et éventuellement "rowcount" au JSP.

2. Créer des boutons de pagination :

  • Inclure les boutons « suivant » et « précédent » pour ajuster la valeur « première ligne » avec le nombre de lignes.

3 . Exécuter une requête SQL pour la sous-liste :

  • Utilisez les clauses SQL LIMIT et OFFSET dans MySQL et PostgreSQL pour récupérer une sous-liste de résultats :

    <code class="sql">SELECT id, username, job, place FROM contact ORDER BY id LIMIT %d OFFSET %d</code>
  • Utilisez une sous-requête avec la clause rownum dans 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>
  • Utilisez row_number() dans 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>

4. Traiter la demande de servlet :

  • Analyser les paramètres "firstrow" et "rowcount", ajuster les valeurs et gérer les débordements.

5. Afficher la sous-liste dans JSP :

  • Présentez la sous-liste en utilisant JSTL c:forEach et un tableau.

6. Évitez le chargement inefficace des sous-listes :

  • Au lieu de stocker l'intégralité du résultat en mémoire et d'utiliser List#subList(), exécutez la requête de sous-liste directement à partir de la base de données. Ceci est plus efficace en termes de mémoire avec des ensembles de données volumineux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn