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 :

Problème mapping hibernate


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut Problème mapping hibernate
    Bonjour, j'ai une classe A et une classe B, la relation entre A et B est many to many, j'ai besoin d'une collection B dans A et vice versa, au niveau sql j'aurais une 3eme table résultante AB, mais cette table est en relation avec d'autre classe metier cad j'aurais besoin de son id AB, comment puis je faire ?

    Proposition :

    puisque j'aurais besoin uniquement de l'id_AB (pas d'autre attribut dans la classe AB, id_AB n'est pas nécessairement composé de id_A et id_B) dans d'autre classe métier, j'ai pensé a persisté la classe AB avec un id_AB qui s'incrémente automatiquement, et créer une collection B dans A, et une collection A dans B (j'aurais besoin de ces collection), et au niveau mapping la classe metier AB et les collection A dans B et B dans A correspondent a la meme table ???

    Merci de m'aiderv

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Par défaut
    Dans la mesure où la table AB est en relation avec d'autres tables, on doit la mapper dans une classe.

    Je ferais :
    - une classe AB contenant un objet B et un objet A
    - une classe A avec une collection de AB
    - une classe B avec une collection de AB

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

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    La relation many-to-many gère bien la table AB.
    Il n'y a pas besoin de créer une classe pour AB, si tu n'as pas d'autre attribut que la clef primaire.
    Voir documentation avec exemple.

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Par défaut
    j'aurais une 3eme table résultante AB, mais cette table est en relation avec d'autre classe metier cad j'aurais besoin de son id AB
    Fr1man, sans classe AB, comment gères-tu les relations de AB avec les autres classes ?

  5. #5
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut
    merci plsavary et fr1man pour vos réponse, effectivement plsavary la classe AB aura une relation avec d'autre classe métier donc j'aurais besoin de son id,
    pour la solution que tu a proposé "plsavary", c'est ce que j'ai fait exactement avec une relation one to many entre (A et AB et entre B et AB), mais j'ai du mal à récupérer la collection B dans A (et A dans B)?

    tout exemple sera la bienvenue !

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    @ plsavary
    Si tu n'as rien d'autre chez les deux clefs étrangères A et B dans ta table AB, tu n'as pas besoin d'objet AB. Tu gères tes collections de chaque côté.

    Si, tu as besoin d'infos supplémentaires, on peut dans ce cas écrire deux relations one-to-many avec la classe d'association AB.

    C'est bien expliqué dans la doc.

  7. #7
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut
    mais j'aurais besoin de l'id AB parce que cette classe est lié avec d'autres classe métiers autrement dis j'aurais besoin de la 'id AB comme clé étrangère dans d'autres tables ????

  8. #8
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Avec hibernate, tu ne manipules pas directement les clefs de tes tables.
    Donc je me répète, si ta table AB nécessite soit des infos supplémentaires (en plus de la clef), soit a une existence propre dans ton modèle de données, tu peux en faire une classe, sinon, pas besoin.

Discussions similaires

  1. [Eclipse Indigo] Problème mapping Hibernate
    Par Dober dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 07/11/2011, 18h33
  2. Problème Mapping Hibernate
    Par nono44200 dans le forum Hibernate
    Réponses: 1
    Dernier message: 31/01/2008, 13h58
  3. [Data] Problème de mapping hibernate
    Par erwan.bodere dans le forum Spring
    Réponses: 1
    Dernier message: 28/04/2007, 20h43
  4. [hibernate]Problème mapping classe association
    Par jsl1 dans le forum Hibernate
    Réponses: 6
    Dernier message: 16/06/2006, 17h27
  5. [Hibernate & Eclipse] problème mapping
    Par sonia_ppr dans le forum Hibernate
    Réponses: 4
    Dernier message: 04/05/2006, 14h32

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