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] Mapping avec identifiant composé


Sujet :

Hibernate Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 5
    Points : 5
    Points
    5
    Par défaut [hibernate] Mapping avec identifiant composé
    Bonjour à tous,

    Je me demande si il est possible (et comment) dans un fichier de mapping hibernate de
    faire un <id> composé avec deux attributs d'une classe sans utilisé un identifiant
    automatique et sans faire appel à une autre classe.

    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     class departement{
            String nom
             Integer annee
             ....
    }
    fichier hibernate ???? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
         <class name="Departement" table="Departement">
                     <id name="nom" type="String" column="nom"> ...
                     <id name="annee" type="Integer" column="nom"> ...
        </class>

    merci

  2. #2
    Membre averti
    Inscrit en
    Août 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 352
    Points : 427
    Points
    427
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <composide-id id="id" class="DepartementPK">
        <key-property name="nom" column="..."/>
        <key-property name="annee" column="..."/>
    </composite-id>
    ...
     
    class Departement {
        private DepartementPK id;
        ...
    }
     
    class DepartementPK {
        private String nom;
        private Integer annee;
        ...
    }

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Merci pour cette réponse.

    Je me demande tout de meme s'il n'existe pas un moyen de se passer de la classe DepartementPK de ton exemple.

    Merci

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2002
    Messages : 652
    Points : 1 151
    Points
    1 151
    Par défaut
    La réponse est non, une classe et une seule doit permettre l'identification unique d'une entitée.
    Soit une classe simple, soit une classe composite, mais pas deux classes simple

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

Discussions similaires

  1. Hibernate Mapping avec fichier jar
    Par Babas007 dans le forum Persistance des données
    Réponses: 0
    Dernier message: 10/03/2011, 13h33
  2. [hibernate] mapping avec interface
    Par plsavary dans le forum Hibernate
    Réponses: 3
    Dernier message: 05/09/2008, 09h51
  3. Probleme de mapping avec Hibernate
    Par kodo dans le forum Hibernate
    Réponses: 10
    Dernier message: 31/07/2006, 09h33
  4. Réponses: 2
    Dernier message: 17/07/2006, 14h45
  5. [Hibernate] Mapping de l'identifiant
    Par BRAUKRIS dans le forum Hibernate
    Réponses: 2
    Dernier message: 02/02/2006, 21h21

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