Hibernate:映射@OneToMany关系的最后一行

时间:2011-09-27 11:03:13

标签: java hibernate annotations hibernate-onetomany

我有元素及其名称之间的关系。所有历史名称以及当前名称都位于具有“已创建”字段的表“element_name”中。最后创建的行是元素的当前名称。

我如何将元素的当前名称映射为元素的属性?

class Element implements Serializable {

    @OneToMany(fetch = FetchType.LAZY)
    private List<ElementName> historyOfElementNames;

    // What annotations should be used here?
    private ElementName currentElementName;

    ...
}

提前致谢!

1 个答案:

答案 0 :(得分:0)

您的解决方案的替代方案是映射列表中的所有名称,对该列表进行排序,然后将当前名称设为elementNames.get(elementNames.size() - 1)

要启用此功能,请添加@IndexColumn注释以及实际索引列和索引。这样你也可以获得名称变更的顺序。

编辑:自Hibernate 3.5 @IndexColumn起,似乎已重命名为@OrderColumn