Qual è il modo migliore per presentare i dati da un set di risultati molto ampio?
-
01-07-2019 - |
Domanda
Sto scrivendo una vista del report di una traccia di controllo e devo visualizzarla in un file .jsp.Qual è il modo "migliore" per trasferire i dati dal database allo schermo?
Utilizziamo Spring per l'inserimento delle dipendenze, Data Access Objects e Hibernate.Posso usare l'ibernazione o il jdbc diretto per questo rapporto.
Se carico tutti i record in memoria, esaurisco la memoria.
Qualche idea che non comporti l'esecuzione della query nel jsp?
Soluzione
Sembra che questo sia il luogo naturale in cui utilizzare l'impaginazione dei risultati di Hibernate: esegui la query a livello servlet e impagina i risultati in un modo simile a come descrive questa persona:
http://blog.hibernate.org/Bloggers/Everyone/Year/2004/Month/08/Day/14#pagination
Questo è il metodo più semplice per implementare l'impaginazione di Hibernate che abbia mai visto...
Altri suggerimenti
IL Visualizza la libreria dei tag è molto efficace nel presentare set di risultati impaginati in servlet o portlet.Ma normalmente funziona con l'intero elenco caricato in memoria.Quindi dovrai lavorare un po' per farlo funzionare con i set di risultati impaginati implementando il file org.displaytag.pagination.PaginatedList
interfaccia.C'è un tutorial sul sito Web Display Tag.Non c'è molto da aggiungere al tutorial, ma anche in questo caso implementare l'interfaccia è piuttosto semplice.
Basta usare il paging e caricare solo un certo numero di righe alla volta sulla pagina.
Un altro modo per farlo è usare scroll() per eseguire lo streaming di una riga alla volta.