使用Spring Data Jpa保存相对实体时集合不会更新

时间:2019-04-29 14:44:39

标签: spring jpa spring-data-jpa spring-data persistence

我有一对多关系的两个实体:

父实体:

@OneToMany(mappedBy = "parent")
public List<Child> getChildren()

子实体:

@ManyToOne
@JoinColumn(name = "PARENT_ID")
public Parent getParent()

考虑以下代码(内部交易):

Child child = childRepository.findById(id).get();
Parent parent = child.getParent();
child.setParent(null);
childRepository.saveAndFlush(child);
List<Child> children = parent.getChildren();

在这种情况下,“子级”列表仍将包含子级实体,尽管该子实体已被删除。我尝试刷新存储库,保存父实体,甚至从parentRepository中获取一个新实体,这些都不起作用。

为什么子列表在保存时不会更新,并且如何在不显式删除实体的情况下确保集合是最新的(我想对集合中的实体进行进一步的操作)?

0 个答案:

没有答案