J'ai une question avec la requête HQL et Hibernate.HQL: requête Hibernate avec ManyToMany
J'ai une classe d'utilisateur et une classe de rôle. Un utilisateur peut avoir plusieurs rôles. J'ai donc relatation de ManyToMany comme ceci:
En classe d'utilisateur:
@ManyToMany(fetch = FetchType.LAZY)
@oinTable(name = "PORTAIL_USERROLE", joinColumns = { @JoinColumn(name = "USERID", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "ROLE", nullable = false, updatable = false) })
public Set<Portailrole> getPortailroles() {
return this.portailroles;
}
En classe rôle:
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "PORTAIL_USERROLE", joinColumns = { @JoinColumn(name = "ROLE", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "USERID", nullable = false, updatable = false) })
public Set<Portailuser> getPortailusers() {
return this.portailusers;
}
Cette cartographie a créé une 3ème table (PORTAIL_USERROLE) où les relations sont approvisionnés. Tout fonctionne bien comme ça. Quand j'ai un utilisateur, je récupère des rôles. Mais, ma question est: dans une requête HQL, comment puis-je obtenir tous les utilisateurs qui ont un rôle spécifique? Toute classe représente la table PORTAIL_USERROLE, donc je ne sais pas comment faire ma requête HQL.
lorsque Pascal Thivent édité à cette question, il a changé joinTable à oinTable et un capitalisé une phrase parfaitement valide avant de supprimer le «Merci» de la fin. Sérieusement, quel était le point, il a rendu la question moins lisible? –