繁体   English   中英

如何映射主键组件和外键具有相同列名的Hibernate实体?

[英]How to map Hibernate entity where a primary key component and the foreign key have the same column name?

我对具有相同列名的复合主键和外键有疑问。

表A PK(ID,NEW_ID)

表B PK(ID,NEW_ID)FK(A_ID,NEW_ID)

我以这种方式将实体B的关系映射到A

@ManyToOne
@JoinColumns({@JoinColumn(name = "A_ID", referencedColumnName = "ID"),
    @JoinColumn(name = "NEW_ID", referencedColumnName = "NEW_ID")})

当我尝试保存B.时,出现错误的无效索引。

所以我猜它也在尝试两次设置NEW_ID并收到此错误。

我没有选择将一列设置为可插入,将可更新设置为false。

有人可以帮我吗

我可以分享的一个技巧是使hibernate.hbm2ddl.auto=create并查看hibernate在做什么,这将帮助您调试,而且使show_sql=true ,您一定会了解此配置将导致什么。

有关注释用法的详细信息,请参阅http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html/entity.html

谢谢阿比

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM