Я довольно новичок в мире Hibernate и поэтому хотел бы попросить несколько разъяснений по поводу сохранения объектов в Hibernate.
Давайте предположим, что у нас есть объект, у которого есть вложенные объекты, поэтому упомянутые отношения с другими объектами.
// Main object I would like to save
@Entity
public class A {
private Long id;
private String name;
private B type; // Has only specific one type from another table
private C anotherType; // Has only specific anotherType from another table
}
// Several type B in database table
@Entity
public class B {}
// Several type C in database table
@Entity
public class C {}
Теперь давайте предположим, что когда приходит запрос POST, я должен получить DTO, который содержит информацию для сохранения этого класса A в базу данных, но у него есть вложенные объекты, такие как B и C.
Как тогда работает сохранение в базу данных? Я имею в виду, должен ли я иметь целые объекты B и C в DTO, а затем преобразовывать их в сущности для сохранения? Или я должен иметь только значения идентификатора (C id и B id), затем запрашивать конкретный репозиторий, получать сущности, устанавливать их в A через установщики и затем сохранять?
Итак, мой главный вопрос: как наиболее эффективно сохранить данные в этом случае?