在Hibernate中是否可以使用Java原始类型将实体列中的一个与另一个表连接?
例如
@JoinColumn(name = "ITEM_ID", referencedColumnName = "LABEL", insertable=false, updatable=false, table="ITEM_DATA")
private String itemLabel;
我只需要加载Item的标签,是否有可用于解决此问题的注释?
期待您的回答。
提前致谢
答案 0 :(得分:2)
你可以:
1)在数据库中创建一个具有该属性的视图,并将实体映射到该属性(这可能会给您带来一些更新问题,具体取决于您使用的数据库)
2)将Item_Data属性添加到类(映射到ITEM_DATA表,使用正确的FK),然后包装getLabel属性:
public virtual string getItemLabel{ get { return Item.label; } }
无论如何,hibernate必须进行连接才能获得正确的属性,所以至少你拥有整个对象以防将来需要访问更多属性