在将子实体分配给父实体中的某个字段后,是否有一种方法可以重新@Id
分配子实体
例如:
@MappedSuperclass
@Access(AccessType.FIELD)
public abstract class Parent implements Serializable {
@Id
protected Integer parentId;
public Integer getId() {
return parentId;
}
public void setId(Integer id) {
this.id = parentId;
}
}
@Entity
@Access(AccessType.FIELD)
public class Child extends Parent implements Serializable {
/*
What should be added to this entity to re assign the @Id to a new field and
make the parentId field just an ordianry field in the Child, not the entity Id
*/
@Id
private Long childId;
}
我曾尝试使用@AttributeOverride
,但它所能提供的只是重命名 id 列名。