У меня есть несколько сущностей в отношениях one-to-many
.
Родитель:
@Entity
@Cacheable(false)
@Table(name="form_area")
public class FormArea {
@OneToMany(fetch = FetchType.LAZY, mappedBy="formArea", cascade = { CascadeType.MERGE, CascadeType.PERSIST })
private List<AssignableArea> assignableAreas = new ArrayList<AssignableArea>();
...
}
Ребенок:
@Entity
@Cacheable(false)
@Table(name="assignable_area")
public class AssignableArea {
private @ManyToOne FormArea formArea;
...
}
Дочерний объект, AssignableArea, также имеет метод getter / setter для родительского объекта FormArea.
Когда я пере-родитель использую setFormArea()
, это кажется успешным, поскольку база данных содержит правильную информацию. Но когда я звоню getAssignableAreas()
в FormArea:
public List<AssignableArea> getAssignableAreas() {
return Collections.unmodifiableList(new ArrayList<>(assignableAreas));
}
Я вижу старый список, до переучивания.
Почему я вижу старый устаревший список, когда ожидаю увидеть обновленный список?