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 :

Hibernate et surcharge LAZY -> EAGER


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut Hibernate et surcharge LAZY -> EAGER
    Bonjour,

    Je tente de forcer le chargement d'associations dans mon graphe d'objets.

    Concrètement, j'ai une classe A qui contient un Set de classes B. Lorsque je surcharge le mode de chargement du Set, initialement en LAZY, vers EAGER ou JOIN (au travers d'une Criteria ou requête HQL) j'obtiens autant d'instances de la classe A que j'ai d'éléments B (une relation 1-1 en quelque sorte).
    J'ai l'impression que Hibernate n'est pas capable de traduire le résultat de mon produit cartésien. Hibernate n'arriverait-il pas à regrouper l'ensemble de mes instance B dans le Set de ma classe A ? Comme si les clés primaires n'étaient jamais égales...
    Ma table A possède un varchar en clé primaire qui est référencé en clé étrangère dans ma table B. Les classes A et B sont générées avec Hibernate Tools et les relations semblent correctes.

    Auriez-vous une idée ?
    Merci

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 298
    Points : 484
    Points
    484
    Par défaut
    Bonjour,
    En hibernate tu peux spécifier un "distinct" sur tes criteria :
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    si tu choisis hibernate comme implémentation de JPA ça devrait aussi marcher

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Merci !

    Effectivement, cela résout mon problème !

    Encore merci !

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 07/03/2014, 16h18
  2. Fonctionnement Hibernate en mode Lazy
    Par anisb dans le forum Hibernate
    Réponses: 6
    Dernier message: 09/12/2008, 17h57
  3. difference entre EAGER et LAZY , hibernate
    Par hibernatefun dans le forum Hibernate
    Réponses: 1
    Dernier message: 26/06/2008, 19h44
  4. Réponses: 1
    Dernier message: 10/04/2008, 15h04
  5. [HIBERNATE 3]Lazy loading
    Par SEMPERE Benjamin dans le forum Hibernate
    Réponses: 11
    Dernier message: 08/02/2006, 22h40

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