Как сохранить двунаправленную ассоциацию без каскадирования с использованием данных Spring JPA?JAVA

Программисты JAVA общаются здесь
Anonymous
Как сохранить двунаправленную ассоциацию без каскадирования с использованием данных Spring JPA?

Сообщение Anonymous »

Предположим, у меня есть двунаправленная связь «один ко многим» между родительским и дочерним элементами, отображенная следующим образом:

Parent.java:

Код: Выделить всё

@Entity
public class Parent {

@Id
private Integer id;

@OneToMany(mappedBy = "parent")
private List childs = new ArrayList();
...
и Child.java:

Код: Выделить всё

@Entity
public class Child {

@Id
private Integer id;

@ManyToOne
@JoinColumn(name = "parent_id")
private Parent parent;

...
Когда я запускаю этот код

Код: Выделить всё

    Parent parent = new Parent(1);
Child child = new Child(1);
Child child2 = new Child(2);
child.setParent(parent);
child2.setParent(parent);
parent.getChilds().add(child);
parent.getChilds().add(child2);

parentRepository.save(parent);
Я получаю исключение

Код: Выделить всё

    Unable to find Child with id 1
Сначала сохранение ребенка тоже не помогает, только исключение

Вернуться в «JAVA»