我有以下两个实体,父级和子级。父母没有外地孩子。
子实体的定义如下:
@Entity
@Table(name = "child")
@Audited
public class Child extends BaseEntity {
@OneToOne
@JoinColumn(name = "application_id")
@MapsId
@NotAudited
private Parent parent;
....
我正在编写一个测试,我想创建一个父实体和一个子实体,并保存它们。因此,我执行以下操作:
parentRepository.save(parent);
Child child = new Child(parent);
childService.save(child);
但是,出现以下错误:
org.springframework.dao.InvalidDataAccessApiUsageException: detached entity passed to persist: io.manuel.Parent; nested exception is org.hibernate.PersistentObjectException: detached entity passed to persist: io.manuel.Parent
问题是,如果我删除了@MapsId注释,它将起作用。我该怎么做才能使其与注释一起使用?