Próbuję zaprojektować aplikację gościnności. Mam dwie tabele jako User
i Request
. Użytkownicy mogą być Host
lub Visitor
i mogą wysyłać do siebie żądania hosta. ale nie ma potrzeby definiowania Użytkowników jako gości lub hostów, nie ma to znaczenia dla systemu, więc nie mam osobnych tabel dla nich. Ta różnica jest ważna tylko w tabeli żądania i jest potrzebna do zachowania visitor_id
i host_id
jako kluczy obcych (mapowanych z kolumną klucza podstawowego user_id
z tabeli użytkownika, ponieważ zarówno host, jak i odwiedzający są również użytkownikami).Hibernacja z dwoma kluczami obcymi z tej samej tabeli - adnotacja
Moje pytanie brzmi: jak zdefiniować tę relację w stanie hibernacji za pomocą Annotation
? Mam na myśli, że w tabeli Request powinny znajdować się dwa klucze obce i są odwzorowane na kolumnę klucza głównego * user_id * z tabeli User. Każdy użytkownik może być gospodarzem lub odwiedzającym wiele razy i nie składa żadnych lub wielu próśb.
@Entity
public class Request {
@Id
private Long req_id;
....
}
Witam, mam podobny rodzaj tabeli ze stanem hibernacji. Działa to dobrze, mam problem z odniesieniami do przodu i do tyłu Jacksona. Jak Tylko jedna kolumna zawiera odniesienia w Jackson, jeśli zrobię inne 500 errosów –