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 :

composite-id avec clé étrangère. comment loader ?


Sujet :

Hibernate Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 135
    Par défaut composite-id avec clé étrangère. comment loader ?
    Bonjour a tous,

    Voila j'ai un mapping "composite-id" composé de 2 clés étrangères :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <composite-id>
      <key-many-to-one
        name="IdShareGroup"
        class="Sharesgroups"
        column="ID_SHARE_GROUP"/>
     
       <key-many-to-one
         name="IdUserGroup"
         class="Usersgroups"
         column="ID_USER_GROUP"/>
    </composite-id>
    Ce que j'aimerai faire c'est loader un objet de ce type, mais comme load ne prend en parametre qu'un élément je ne sais pas comment faire.
    De plus hibernate synchronizer ne m'a pas crée une classe intermédiaire contenant ces 2 clés, classe que j'aurais pu par la suite passer en parametre a load...

  2. #2
    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
    http://www.hibernate.org/hib_docs/v3...on-compositeid

    Et plus précisemment :
    Malheureusement cette approche sur les identifiants composés signifie qu'un objet persistant est son propre identifiant. Il n'y a pas d'autre moyen pratique de manipuler l'objet que par l'objet lui-même. Vous devez instancier une instance de la classe persistante elle-même et peupler ses attributs identifiants avant de pouvoir appeler la méthode load() pour charger son état persistant associé à une clef composée. Nous appelons cette approche "identifiant composé embarqué" et ne la recommandons pas pour des applications complexes.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 135
    Par défaut
    Merci beaucoup !

    Vous devez instancier une instance de la classe persistante elle-même et peupler ses attributs identifiants avant de pouvoir appeler la méthode load() pour charger son état persistant associé à une clef composée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Usersgroups usrgrp = (Usersgroups)hibSession.load(Usersgroups.class, idusergroup);
    Sharesgroups sharegrp = (Sharesgroups)hibSession.load(Sharesgroups.class, idsharegroup);
     
    MaClasseAu2Keys classo2keys = new MaClasseAu2Keys();
    classo2keys.setIdUserGroup(usrgrp);
    classo2keys.setIdShareGroup(sharegrp);
     
    MaClasseAu2Keys ar_loaded = (MaClasseAu2Keys)hibSession.load(MaClasseAu2Keys.class, classo2keys);

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

Discussions similaires

  1. Comment utilisé un composite-id avec un set ?
    Par grizzz dans le forum Hibernate
    Réponses: 0
    Dernier message: 18/09/2008, 12h39
  2. [ eclipse ][ view ] [ menubars ] comment loader un icon?
    Par Jean-Philippe Shields dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 06/12/2005, 14h01
  3. PB avec multi frames - comment faire une multiframe dans URL
    Par guillaumeIOB dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 08/11/2005, 14h34
  4. Réponses: 4
    Dernier message: 20/10/2005, 14h58
  5. [SQL] jointure externe avec 3 tables, comment faire ....
    Par grumbok dans le forum Langage SQL
    Réponses: 2
    Dernier message: 04/08/2005, 16h13

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