首页 > 解决方案 > 如何为多对一关系(单向)生成外键?

问题描述

我想要一个与另一个实体具有多对一关系的实体,但是使用 JPA 生成的外键(数据库中没有外键),这可能吗?

我知道有一个使用一对多和多对一的解决方案,但我只想有一个多对一,因为我只希望它是单向的

标签: springspring-data-jpaforeign-keysmany-to-one

解决方案


您可以拥有OneToManyand ManyToOne,无论是单向还是双向。显然,当您从一侧具有多对一关系时,您将在另一侧具有一对多关系。此外,您应该注意,只有一个多方到单方的外键可以处理这种关系。

如果您在其中一个或注释@JoinColumn(name="some_column_name")下方使用,hbm2ddl 应该能够在您的表中创建正确的外键。@OneToMany@ManyToOne

但是,尽量不要依赖 hbm2ddl 并自己维护数据库模式。


推荐阅读