Comment écrire logique de Pagination?
Quelqu'un peut-il fournir une idée/une logique d'écrire la logique de la pagination de la page de recherche, je travaille sur?
L'information que j'ai est nombre total de pages de la recherche- 10 enregistrements par page aussi j'ai été envoyé à la fois au précédent et au suivant numéro de page(pas de problème de l'écriture de la logique de tout ce que je dois faire je sors cette info et de le remplir. Je reçois également les infos de la page je suis sur. Je ne peut afficher que 10 pages comme ci-dessous
<previous 1 |2 |3 | 4| 5 | 6 | 7 | 8 | 9 | 10 next>
Dire si le nombre total de pages de 15 ans et lorsque l'utilisateur cliquez sur suivant puis j'ai besoin de l'afficher comme ça
<previous 2 |3 |4 |5 |6 |7 |8 |9 |10 |11 next>
À tout moment, j'ai juste besoin de montrer de 10 pages dans la pagination.
#set($start = 1)
#set($end = $Integer.parseInt($searchTO.getPagination().getNumberofPages()))
#set($range = [$start..$end])
#set($iter = 1)
#foreach($i in $range)
#foreach($link in $searchTO.getPagination().getDirectPageLinks())
#if($i == $iter)
#if ($Integer.parseInt($searchTO.getPagination().getPageNumber())==$iter)
<a class="search_current" href="/?_page=SEARCH&_action=SEARCH$link">$i  |</a>
#else
<a href="/?_page=SEARCH&_action=SEARCH$link">$i  |</a>
#end
#set($iter = 1)
#break
#else
#set($iter=$iter+1)
#end
#end
#end
- J'ai fait cela avant. Il aiderait à voir votre code si...
- La façon dont il est codé en droit, c'est maintenant que $searchTO.getPagination().getDirectPageLinks() récupérer tous les liens vers les pages. si j'ai 50 page puis c'est l'affichage de tous les
- Ce persistance cadre utilisez-vous?
- Voir mon exemple de pagination: stackoverflow.com/questions/5521835/pagination-in-java/...
- Certains de structure interne spécifique à l'entreprise pour laquelle je travaille pour l'
Vous devez vous connecter pour publier un commentaire.
Ici est de savoir comment je voudrais mettre en œuvre:
Il est généralement une bonne idée de créer une classe de Filtre qui filtre les données et contient la pagination de l information pour vous. J'utilise quelque chose comme ceci:
Vous pourriez avoir spéciaux des sous-classes de filtres (en fonction de ce que vous voulez récupérer) et chaque sous-classe serait de mettre en œuvre c'est
createCountQuery()
etcreateQuery()
.Vous mettez alors votre
Filter
à laVelocity
contexte et vous pouvez récupérer toutes les informations dont vous avez besoin à partir de cette classe.Lorsque vous définissez la page en cours pf cours de mise à jour de tous les autres renseignements dont vous avez besoin (c'est à dire currentStartPageNo, currentEndPageNo).
Vous pouvez également avoir un
refresh()
méthode pour mettre le filtre de retour à son état initial.Et bien sûr, vous devriez garder à l'instance de la même filtre sur la session (je veux dire que vous framework web comme Struts, à Turbine, etc.) pendant que l'utilisateur navigue sur la page de recherche à laquelle l'
Filter
appartient.C'est juste une directive, d'une idée, il n'est pas entièrement écrite en code exécutable, juste un exemple pour vous lancer dans une direction.
Je voudrais également vous recommander un plugin jQuery appelé jqGrid qui a la pagination de soutien (bien que vous devez avoir une sauvegarde pour récupérer les données) et un tas d'autres trucs cool.
Vous pouvez l'utiliser pour afficher vos données dans une grille. Je l'utilise avec
Velocity
sans problème. Il a beaucoup de très agréable et de nombreuses fonctionnalités utiles comme filtre de la barre d'outils, cellules modifiables, le transfert de données dansJSON
,XML
etc.Honnêtement, je ne sais pas si il a de la pagination comme vous avez besoin (je l'utilise avec une seule page affichée dans la barre de navigation et vous ne pouvez pas cliquer sur une page il suffit d'utiliser la prochaine une prev boutons pour naviguer), mais il peut y avoir de soutien pour cela.
Côté serveur pagination afin d'afficher toutes les données dans une page, Divisé en plusieurs parties afin d'attirer l'attention de l'utilisateur. Je suis à l'aide de affichage de la balise (Pour utiliser ce maintenir un champ de classe POJO de regarder tous les enregistrements de données)
Reportez-vous cette question: La Pagination en Java
Une autre pagination à l'aide de Composite, de modifier le présent en fonction de votre code.
La Pagination des concepts reste le même pour toutes les langues et de la mise en œuvre du code exige que peu de modification fondés sur les langues.
Java Pagination
Reportez-vous encore une question existante pour plus d'info:
la pagination en java?
D'autres Url du site:-