是否可以在 Hibernate 中通过 OneToOne 关系映射超类和子类?
是否可以根据 Hibernate 中的主键属性通过 OneToOne 关系将子类映射到其超类?我怎样才能实现这个?
Is it possible to map a subclass to its superclass by OneToOne relationship base on their primary key properties in Hibernate? How can I implement this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 JOINED 继承策略来做到这一点,如下所示:
这样,id 将同时位于
cat
和domesticcat
表中,两者都作为主键,并带有两者之间的外键。这为您提供了一对一的关系(不使用@OneToOne)。You can do it with the JOINED inheritance strategy like this:
This way, the id will be both in the
cat
and thedomesticcat
table, both as a primary key, and with a foreign key between the two. This gives you a one to one relationship (without using @OneToOne).您应该查看 Hibernate 中的 继承映射了解继承映射的参考。
You should look at Inheritance Mapping in the Hibernate reference to understand inheritance mapping.