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

Hibernate Java Discussion :

Stratégie de chargement


Sujet :

Hibernate Java

  1. #1
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 227
    Points : 109
    Points
    109
    Par défaut Stratégie de chargement
    bonjour à tous,

    je suis à fond dans un projet et j'utilise pour la première fois hibernate, j'aimerai avoir vos avis quand à la stratégie à utiliser pour le chargement de graphe d'objet entre le lazy, fetch et outer-join, j'utilise plusieurs écrans web pour couvrir des cas d'utilisation, alors si vous avez un petit conseil de paramétrage.

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Utilise le lazy autant que possible si tu peux garder ta session ouverte jusqu'au rendu de ta jsp.

  3. #3
    Membre régulier
    Inscrit en
    Mars 2006
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 227
    Points : 109
    Points
    109
    Par défaut
    je vais commencer d'abord avec ça puis je te tiens au courant merci

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 74
    Points : 83
    Points
    83
    Par défaut
    A mon avis, il vaut mieux utiliser une requête HQL de type join fetch pour charger le graphe d'objet dont tu as besoin en une seule requête... Jouez sur le lazy alors qu'on sait pertinement que l'on a besoi nde charger l'association implique deux requêtes alors qu'une suffit...
    Attention au lazy ! c'est pas toujours une bonne idée de jouer avec: il faut garder la session ouverte, ...

    Citation Envoyé par kokumbo Voir le message
    je vais commencer d'abord avec ça puis je te tiens au courant merci

  5. #5
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    A mon avis, il vaut mieux utiliser une requête HQL de type join fetch pour charger le graphe d'objet dont tu as besoin en une seule requête... Jouez sur le lazy alors qu'on sait pertinement que l'on a besoi nde charger l'association implique deux requêtes alors qu'une suffit...
    Attention au lazy ! c'est pas toujours une bonne idée de jouer avec: il faut garder la session ouverte, ...
    Ca dépend des cas certes, mais à t'écouter, le lazy ne sert à rien.
    Or, si on ne l'utilise pas dans une application web, on ne l'utilise jamais.
    Et puis le coup de la session ouverte, je ne vois pas vraiment le problème...enfin ça dépend du contexte, c'est toujours pareil.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 74
    Points : 83
    Points
    83
    Par défaut
    Ben si je reprends mes propos originaux, je confirme à dire qu le lazy ne sert à rien voire même est dangereux dans les cas d'utilisation où l'on est sûr d'avoir besoin d'accéder aux dépendances.

    Citation Envoyé par fr1man Voir le message
    Ca dépend des cas certes, mais à t'écouter, le lazy ne sert à rien.
    Or, si on ne l'utilise pas dans une application web, on ne l'utilise jamais.
    Et puis le coup de la session ouverte, je ne vois pas vraiment le problème...enfin ça dépend du contexte, c'est toujours pareil.

  7. #7
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Ben si je reprends mes propos originaux, je confirme à dire qu le lazy ne sert à rien voire même est dangereux dans les cas d'utilisation où l'on est sûr d'avoir besoin d'accéder aux dépendances.
    Tu es trop radical.
    Si tu as un objet avec 30 associations, tu vas les laisser en lazy par défaut.
    Comme ça, quelle que soit la vue qui va afficher ses associations, il n'y aura pas besoin de modifier le code, et pas de faire 30 méthodes de chargement par fetch selon la collection dont tu as besoin.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Stratégie de chargement
    Par yacine.dev dans le forum Hibernate
    Réponses: 5
    Dernier message: 07/05/2010, 12h15
  2. Stratégies de chargement
    Par JeReMsS69 dans le forum Hibernate
    Réponses: 30
    Dernier message: 14/05/2009, 15h31

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