Quelle est la meilleure façon de présenter les données d’un très grand ensemble de résultats?

StackOverflow https://stackoverflow.com/questions/95886

Question

J'écris une vue de rapport d'une piste d'audit et je dois l'afficher dans un fichier .jsp. Quel est le "meilleur" moyen d'obtenir les données de la base de données à l'écran?

Nous utilisons Spring pour l'injection de dépendances, les objets d'accès aux données et Hibernate. Je peux utiliser hibernate ou straight jdbc pour ce rapport.

Si je charge tous les enregistrements en mémoire, je n'ai plus de mémoire.

Des idées n'impliquant pas l'exécution de la requête dans le jsp?

Était-ce utile?

La solution

Il semble que ce soit un endroit naturel pour utiliser la pagination de vos résultats Hibernate - exécutez la requête au niveau du servlet et paginez les résultats d'une manière similaire à celle décrite par cette personne:

http: //blog.hibernate .org / Blogueurs / Tout le monde / Année / 2004 / Mois / 08 / Jour / 14 # pagination

C’est la méthode la plus simple pour implémenter la pagination Hibernate que j’ai vue ...

Autres conseils

La Afficher la bibliothèque de balises permet très bien de présenter des ensembles de résultats paginés dans des servlets ou des portlets. Mais cela fonctionne normalement avec toute la liste chargée en mémoire. Vous devrez donc travailler un peu pour que cela fonctionne avec les jeux de résultats paginés en implémentant l'interface org.displaytag.pagination.PaginatedList . Un didacticiel est disponible sur le site Web Afficher le tag. Le didacticiel n’est pas très compliqué, mais il est assez facile de mettre en œuvre l’interface.

Utilisez simplement la pagination et ne chargez qu'un certain nombre de lignes sur la page à la fois.

Une autre façon de procéder consiste à utiliser scroll () pour diffuser une ligne à la fois.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top