[英]How to create foreign key in Hibernate on Integer column
我有一个Java实体,我希望Hibernate从Integer字段创建一个外键(因为我没有对象引用):
@Entity
public class Invoice {
...
@Column(nullable = true)
private Integer generatedBy;
...
我想我想用一个属性做这样的事情:
@ForeignKey(name="FK_Invoice_GeneratedBy", references="UserTable.UserId")
@Column(nullable = true)
private Integer generatedBy;
实现这一目标的最佳方法是什么? 我最好不要将这些关系保存在单独的文件中(如果可能)。
似乎没有解决方案,因此接受这个作为答案。
有办法做到这一点,但它不是很好......
您可以使用整数属性,以及以这种方式映射的对象属性:
@Column(ame = "GENERATED_BY", nullable = true)
private Integer generatedBy;
@ForeignKey(name="FK_Invoice_GeneratedBy")
@JoinColumn(name = "GENERATED_BY", nullable = false, updatable = false, insertable = false)
private User generatedByUser;
您可以不保留对generatedByUser字段的外部访问权限,它只会显示hibernate存在关系。 您可以随意设置“整数”字段,稍后从DB加载此对象时,您将获得用户引用。
再说一次,不是很漂亮,但有时也很有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.