IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

[struts] afficher page par page une liste d'élément [FAQ]


Sujet :

Struts 1 Java

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 6
    Points : 2
    Points
    2
    Par défaut [struts] afficher page par page une liste d'élément
    Bonjour,

    je voudrais afficher une liste d'élément page par page sans charger la liste entière des éléments.

    Par exemple, je fais une recherche qui me renvoie 100 éléments et je veux les afficher par page de dix éléments.
    - Je ne veux pas charger les 100 données d'un coup.
    - Quand je charge la première page, je ne charge que les données de 1 à 10, si je veux voir la deuxième page, je ne charge que celles de 11 à 20, si je veux voir la 5° que les données de 40 à 50, et ainsi de suite.

    Que faut il faire? je pense utiliser le layout:pager de struts, mais j'aurias besoin d'un peu plus de précision.
    Si des personnes ont d'autrer idées je suis preneur...
    Merci d'avance
    Pat

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 239
    Points : 239
    Points
    239
    Par défaut
    Salut,

    un grand classique de la pagination de résultat : displayTag

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    merci je vais aller voir ça
    Si des personnes ont quelques exemples je prend

  4. #4
    Candidat au Club
    Inscrit en
    Octobre 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    PAr contre je viens de lire ça :
    " ExtremeTable gére un pseudo DataProvider. Donc si vous affichez 10 enregistrements sur les 10000 de la liste, pas besoin de charger les 10000. Displaytag nécessite que vous lui passiez les 10000 même pour un affichage partiel."

    Ce n'est pas ce qui m'intéresse moi je ne veux pas charger toutes les donnees, je veux juste charger celle que j'affiche.

    quelqu'un connait ExtremeTable?

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Citation Envoyé par BurningPat
    PAr contre je viens de lire ça :
    " ExtremeTable gére un pseudo DataProvider. Donc si vous affichez 10 enregistrements sur les 10000 de la liste, pas besoin de charger les 10000. Displaytag nécessite que vous lui passiez les 10000 même pour un affichage partiel."

    Ce n'est pas ce qui m'intéresse moi je ne veux pas charger toutes les donnees, je veux juste charger celle que j'affiche.

    quelqu'un connait ExtremeTable?
    C est bien ce qui me semblait, j'ai utilisé DisplayTag et il stocke une liste en mémoire correspondant à la totalité des enregistrements ça peut donc devenir vite très très lourd

  6. #6
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Dans ton action Struts il faut que tu gère trois points :
    • 1. Utiliser un argument de la requête HTTP qui indiquera le premier élément à afficher (ou le numéro de la page).
      2. Déterminer le nombre total d'élément de ta recherche (et donc le nombre de page).
      3. Stocker 10 éléments du résultat dans une List en commencant à l'élément spécifié en 1..


    Pour le point 2. 3., si les données proviennent d'une base de données, le mieux est de créer un ResulSet de type TYPE_SCROLL_INSENSITIVE (voir la FAQ : Quels sont les différents types de ResultSet ?) afin de pouvoir te déplacer dans les numéro de ligne...

    Tu passes le tout à ta JSP, et dans cette dernière :
    • Tu affiches les 10 éléménts de la List. Tu peux pour cela utiliser DisplayTag, logic:iterate de Struts, voir le c:forEach de la JSTL...
      Puis tu affiches les liens page 1, 2, 3, 4, ... en te basant sur le numéro de page courante et sur le nombre de page total (tu peux encore utiliser logic:iterate ou c:forEach pour cela).



    a++

  7. #7
    Candidat au Club
    Inscrit en
    Octobre 2003
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    OK merci merci, je vais mettre ça en place bientôt si j'ai des questions je reviens te voir.

Discussions similaires

  1. [MySQL] afficher les enregistrements page par page
    Par hichamdeb dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 01/06/2009, 17h46
  2. Réponses: 1
    Dernier message: 15/06/2007, 19h51
  3. [AJAX] modification d'une page web liée à une liste déroulante
    Par carusier dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 10/05/2007, 17h37
  4. afficher resultat page par page selon une recherche
    Par boss59840 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 29/03/2007, 18h12
  5. [MySQL] afficher plusieurs enregistrements par page par page à la volée
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/03/2006, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo