Bonjour,

J'ai besoin de votre aide car je n'arrive pas à comprendre comment utiliser des jointures dans une query lorsqu'il y a plus relations one to many? Voici ce que j'essaye de faire :

Les films ont une relation one to many avec les acteurs
@OneToMany(fetch=FetchType.EAGER, cascade = CascadeType.ALL)
private Set<Actors> actors;

et les acteurs ont une relation one to many avec les Manageurs
@OneToMany(fetch=FetchType.EAGER, cascade = CascadeType.ALL)
private Set<Manager> managers;

Je souhaite implémenter un service qui va filtrer les films et ne remonter que ceux qui ont au moins un acteur ayant un manager avec le nom donné. En sql d'habitude cela se fait en faisant des jointures et en utilisant les clef étrangères mais là je ne vois pas comment faire car il n'y a pas de clef étrangère la relation est juste déclaré en mettant "Set<Manager> managers"

Est-ce que vous sauriez m’éclairer?

merci d'avance je suis totalement perdu pour l'instant

J'ai commencé à écrire cela mais comme je le disais je ne vois pas comment faire les jointures sans clef étrangères
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
@Query("select id From Movie as m join Actor as a on m. = a.")
    List<Movie> getMoviesByManagerName(String managerName);