Bonjour tout le monde,
je suis entrain de découvrir le monde d'Hibernate et surtout des criteria et j'ai un petit soucis.
Je souhaite faire une requête sur les 3 tables suivantes :
FILM
--------------------
Long id
list<Acteur> acteurs
list<Scene> scenes
ACTEUR
--------------------
Long id
String nom
SCENE
--------------------
Long id
String endroit
Et j'aimerais simplement récupérer les acteurs qui s'appellent "Pierre" et qui ont joué dans l'endroit "Paris".
Voici mon code actuellement :
Mon soucis est que j'obtiens des objects de type Film (normal vu ma requête).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 DetachedCriteria detachedCrit = DetachedCriteria.forClass(Film.class); detachedCrit.setFetchMode("acteurs", FetchMode.JOIN); detachedCrit.createAlias("acteurs", "act"); detachedCrit.setFetchMode("scenes", FetchMode.JOIN); detachedCrit.createAlias("scenes", "scn"); detachedCrit.add(Restrictions.eq("act.nom",filter.getNom()); detachedCrit.add(Restrictions.eq("scn.endroit",filter.getEndroit()); Criteria crit = detachedCrit.getExecutableCriteria(getSession()); //résultat List results = crit.list();
Mais comment dois-je m'y prendre pour obtenir la liste d'acteurs associés ?
Merci beaucoup pour votre aide!
Partager