JpaReposiotry.save() создает копию объекта, которую и сохраняет

88
19 марта 2021, 14:50

Есть родительский объект

@Entity
class Parent {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @OneToMany(mappedBy = "parent", fetch = FetchType.LAZY, cascade = CascadeType.ALL, orphanRemoval = true)
    private List<Child> children;
    public void addCHild(Child child){
        children.add(child);
        child.setParent(this);
    }
...
}
@Entity
class Child {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @ManyToOne(optional = false)
    private Parent parent;
            ...
}

При таком вызове

Parent parent = parentRepository.findById(id);
Child child = new Child();
parent.addCHild(child);
parentRepository.save(parent);

Дочерний объект сохраняется, но сохраняется его копия. Потому child.getId() будет null. Как правильно сохранять дочерние объекты?

READ ALSO
Создать систему лицензирования [закрыт]

Создать систему лицензирования [закрыт]

Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме

98
Не могу достучаться до приложения

Не могу достучаться до приложения

Написал веб приложение на spring bootЧерез Intelij Idea (встроеный в spring boot tomcat) все запускается и работает

124
Неправильная работа фильтра на сайте

Неправильная работа фильтра на сайте

У меня такая проблема, сделал свой первый сайт ves-shinyru, и как недавно выяснил сделал не так как хотел

116
Как скачать файл разных форматов по ссылке на амазон

Как скачать файл разных форматов по ссылке на амазон

Подскажите, как можно реализовать скачивание в браузере средствами js, файлов по ссылке, например https://s3eu-west-1

98