【发布时间】:2018-08-21 15:33:10
【问题描述】:
我希望定义一个名为Frame 的@Embeddable 类。此类的生命周期与名为Master 的@Entity 相关,该Master 拥有一个注释为@ElementCollection 的帧列表,即
@Entity
public class Master extends ObjectWithId {
private List<Frame> frameList;
@ElementCollection
@OrderColumn
@OrderBy( "treeStage ASC" )
public List<Frame> getFrameList() { return frameList; }
}
@Embeddable
@Access( AccessType.PROPERTY )
public class Frame {
private int treeStage;
@Basic
@Column( nullable = false )
public int getTreeStage() { return treeStage; }
}
但正如建议的那样,frameList 具有树结构,这意味着每个 Frame 都有一个除根之外的父级。因此,我想向 Frame 添加一个指向其父级的属性:
@Embeddable
@Access( AccessType.PROPERTY )
public class Frame {
private Frame parentFrame;
private int treeStage;
@Basic
@Column( nullable = false )
public int getTreeStage() { return treeStage; }
}
如何注释parentFrame 属性?
目前我只得到无限循环,因为可嵌入对象通过 parentFrame 属性嵌入自身...
【问题讨论】:
标签: java hibernate annotations