[JPA] Zapis encji do bazy danych i drugiej encji

0

Cześć

Mam sobie tabele w bazie danych Students, University, oraz StudentForUniversities, która spaja dwie poprzednie tabele. Potrzebuje aby obiekt studenta po zapisie do bazy danych został umieszczony w encji StudentForUniversities. Problemem jest to, że id jest autoinkrementowane na bazie i nie wiem zbytnio jak to zrobić, ani nawet na jakiej podstawie wyciągnąć studenta. I właśnie podpowiedzcie mi, jak to zrobić? Dla zobrazowania sytuacji:

public void save (){
Student student = new Student();
// ...
studentsRepository.save(student);

StudentForUniversities sfu = new StudentForUniversities();
sfu.setStudent(); //??
//...
studentForUniversitiesRepository.save(sfu);
}
0

Jeżeli dobrze rozumiem tabela StudentForUniversities spaja Students i University to znaczy że jest tabelą linkującą. Jeżeli tak to możesz użyć @JoinTable takiego jak tu: https://www.logicbig.com/how-to/code-snippets/jcode-jpa-joincolumn.html i użyć podejścia kaskadowego do relacji, wtedy ID do rekordów w tabeli linkującej wpadają z automatu i nie ustawiasz relacji jakoś ręcznie.

0

Możesz studentsRepository.save(student); przypisać do zmiennej a później jego wartości przypisać do obiektu którego chcesz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1