Hibernate原始类型映射

时间:2011-07-28 11:42:20

标签: hibernate annotations

在Hibernate中是否可以使用Java原始类型将实体列中的一个与另一个表连接?

例如

@JoinColumn(name = "ITEM_ID",  referencedColumnName = "LABEL", insertable=false, updatable=false, table="ITEM_DATA")
private String itemLabel;

我只需要加载Item的标签,是否有可用于解决此问题的注释?

期待您的回答。

提前致谢

1 个答案:

答案 0 :(得分:2)

你可以:

1)在数据库中创建一个具有该属性的视图,并将实体映射到该属性(这可能会给您带来一些更新问题,具体取决于您使用的数据库)

2)将Item_Data属性添加到类(映射到ITEM_DATA表,使用正确的FK),然后包装getLabel属性:

public virtual string getItemLabel{ get { return Item.label; } }

无论如何,hibernate必须进行连接才能获得正确的属性,所以至少你拥有整个对象以防将来需要访问更多属性