Mam 2 elementy/tabele hibernacji i trzeba połączyć informacje z obu do wykorzystania w widoku. Tabele sąNajlepszy sposób łączenia 2 tabel przy użyciu hibernacji
Istnieje relacja jeden-do-wielu między klientem a terminem, w oparciu o identyfikator klienta. W zwykłym SQLu powiedziałbym coś w rodzaju:
Select
client.clientId,
appt.apptTime,
client.firstName,
client.lastName
from
Client client,
Appointment app
where
client.clientId = appt.clientId
i użyć zwróconego zestawu rekordów.
Nie jestem pewien, jak to zrobić w hibernacji. Czy powinienem utworzyć encję ClientAppt, a następnie zrobić coś podobnego do powyższego select (zmodyfikowanego nieco dla HQL)?
Uwaga, pomyślałem o zastosowaniu podejścia SecondaryTable, ale myślę, że wymaga to związku 1 do 1? Przypuszczam, że mógłbym mapować jeden do wielu, ale czy istnieje alternatywa? To jest jednorazowa zmiana i odwzorowanie jednej do wielu relacji może być nieco kosztowne dla czegoś tak małego? Jakie jest najlepsze podejście? Dzięki
Dzięki, Sharakan. Myślę, że spróbuję tej metody i zobaczę, co się stanie. – Dave
sharakan, próbowałem twojej metody, ale dostaję błąd. Opis jest tutaj - http: // stackoverflow.com/questions/12502850/class-not-mapped-exception-but-it-is-is-mapowany – Dave
OK, od definicji terminu, w którym się znajdujesz (szczególnie, że masz identyfikator, którego nie znałem) , Myślę, że faktycznie chcesz Entity. Zaktualizuję moją odpowiedź. Nie mogę jednak komentować braku mapowania, nie wiem, jak konfiguruje się Glassfish. – sharakan