Bonjour, voici mon problème:
J'ai la structure suivante :
Une entité abstraite Véhicule :
2 Entités qui héritent de la classe Véhicules :
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(name = "vehicule_type", discriminatorType = DiscriminatorType.STRING) @Table(name="vehicule") public abstract class Vehicule { [...] }
L'entité Voiture :
et l'entité Camion :
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING) @DiscriminatorValue("voiture") public class Voiture extends Vehicule { @ManyToMany @JoinTable( name="societe_vehicule", joinColumns=@JoinColumn(name="vehicule_id", referencedColumnName="vehicule_id"), inverseJoinColumns=@JoinColumn(name="societe_id", referencedColumnName="societe_id") ) private Collection<Societe> societes; }
puis 1 autre entité Société qui a 2 relations ManyToMany vers les 2 entités :
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING) @DiscriminatorValue("camion") public class Camion extends Vehicule { @ManyToMany @JoinTable( name="societe_vehicule", joinColumns=@JoinColumn(name="vehicule_id", referencedColumnName="vehicule_id"), inverseJoinColumns=@JoinColumn(name="societe_id", referencedColumnName="societe_id") ) private Collection<Societe> societes; }
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 @Entity @Table(name="societe") public class Societe { [...] @ManyToMany(mappedBy="societes") private Collection<Voiture> voitures; @ManyToMany(mappedBy="societes") private Collection<Camion> camions; }
J'aimerais donc savoir comment faire pour avoir la liste des Voitures et la liste des Camions pour une société.
Parce que avec cette structure, peut importe que j'ajoute des Voitures ou des Camions, il me dit que je n'ai que des Voitures.
Par exemple, si j'ajoute 2 Voitures et 1 Camion, ça me retourne 3 Voitures et 0 Camion.
Merci d'avance pour votre aide.
PS: sachant que la structure de la BD est plus ou moins figée :
[Vehicule]<=>[Societe_Vehicule]<=>[Societe]
Partager