1) timetableCells
помечены только следующими типами каскадов:
@OneToMany(mappedBy = "timetable", cascade = {CascadeType.REMOVE, CascadeType.PERSIST})
2) В неделях и часах есть только это:
@ManyToOne(cascade = CascadeType.PERSIST)
3) Если вы передадите Timetable
для сохранения метода здесь, и он был сохранен ранее:
timetableRepository.save(timetable);
Spring Data JPA будет вызывать не persist
, а merge
.
Это может быть тот случай, когда каскад не работает. Если вы добавите это в свою конфигурацию, вы можете получить то, что вам нужно:
cascade = {CascadeType.REMOVE, CascadeType.PERSIST, CascadeType.MERGE})