Mam pytanie z zapytaniem HQL i hibernacji.HQL: Hibernacja zapytania z ManyToMany
Mam klasę użytkownika i rolę klasy. Użytkownik może mieć wiele ról. Więc mam relatation ManyToMany takiego:
w klasie użytkownika:
@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;
}
w klasie Rola:
@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;
}
To odwzorowanie stworzył 3rd tabeli (PORTAIL_USERROLE), gdzie relacje są zaopatrzone. Wszystko działa dobrze w ten sposób. Kiedy mam użytkownika, pobieram role.
Ale moje pytanie brzmi: w zapytaniu HQL, w jaki sposób mogę uzyskać wszystkich użytkowników, którzy mają określoną rolę? Każda klasa reprezentuje tabelę PORTAIL_USERROLE, więc nie wiem, jak utworzyć moje zapytanie HQL.
kiedy Pascal Thivent edytować to pytanie Zmienił JoinTable do oinTable i un kapitalizowane doskonale ważne zdanie przed usunięciem "Dziękuję" od końca. Poważnie, o co chodziło, sprawiło, że pytanie stało się mniej czytelne? –