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 :

Relation many to many avec attribut


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2013
    Messages : 81
    Par défaut Relation many to many avec attribut
    Bonjour j'ai un petit soucis étant débutant en hibernate je me demande comment mapper mes objets java : je m'explique :

    -J'ai une classe Carrelage qui référence différent type de carrelages identifié par un codeArticle unique

    -J'ai une classe Commande qui associe à un numéro de Commande différents codeArticle qui sont commandés

    Jusque ici je m'en sors seulement j'aimerais que dans cette association many to many entre Carrelage et Commande je puisse avoir la quantité de carrelages demandé

    Des idées ?

    Merci de votre aide
    Images attachées Images attachées  

  2. #2
    Membre expérimenté Avatar de hbennou
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 162
    Par défaut
    Bonjour,

    tu peux mettre un attribut Qte dans ta classe commande

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2013
    Messages : 81
    Par défaut merci
    Citation Envoyé par hbennou Voir le message
    Bonjour,

    tu peux mettre un attribut Qte dans ta classe commande
    Non parce qu'une commande peut concerner plusieurs articles en quantité différente

  4. #4
    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
    Tu peux découper ta relation n-n en deux relations 1-* *-1 avec une entité supplémentaire, qui portera autant d'attributs que tu le souhaites, notamment ta quantité.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2013
    Messages : 81
    Par défaut
    Donc je vais avoir ma classe carrelage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    @Entity
    @Table(name="carrelage")
    public class Carrelage {
    	@Id
    	@Column(name="codeArticle")
    	private String codeArticle;
    @OneToMany(mappedBy="carrelage")
    	private List<Commande_Carrelage> refCommande;
    ma classe Commande_Carrelage :
    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
    17
    18
    19
     
    @Entity
    @Table(name="Commande_Carrelage")
    public class Commande_Carrelage {
     
    	@Id
    	@ManyToOne(cascade={CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH }
    			)
    	@JoinColumn(name="codeArticle")
    	private Carrelage carrelage;
     
    	@Id
    	@ManyToOne(cascade={CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH }
    			)
    	@JoinColumn(name="refCommande")
    	private Commande commande;
     
    	@Column(name="quantite")
    	private int quantite;
    et ma classe Commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    @Entity
    @Table(name="demandeEchantillon")
    public class Commande {
    	@Id
    	@GeneratedValue(strategy=GenerationType.AUTO)
    	@Column(name="refCommande")
    	private int refCommande;
           @OneToMany(mappedBy="commande")
    	private List<Commande_Carrelage> com;
    Si j'ai bien compris ?

  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
    Oui c'est l'idée.

Discussions similaires

  1. PGSQL-EclipseLink Relation One To Many et Many To One
    Par faitor1 dans le forum Persistance des données
    Réponses: 0
    Dernier message: 30/01/2015, 19h46
  2. Réponses: 5
    Dernier message: 10/08/2014, 17h25
  3. Réponses: 0
    Dernier message: 25/07/2011, 17h42
  4. [sqlalchemy] Création d'une relation Many to Many avec attributs
    Par joubu dans le forum Bibliothèques tierces
    Réponses: 6
    Dernier message: 05/08/2010, 20h13
  5. Un peu de mal a comprendre le concepte "one-to-many" et "many-to-many"
    Par chriscoolletoubibe dans le forum Hibernate
    Réponses: 4
    Dernier message: 29/03/2007, 18h50

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