在使用Hibernate定义了@OneToOne关系之后,我在MySQL db中有了一对多的关系。
一对多关系:
这是一个错误还是Hibernate管理一对一关系的方式?
我甚至试过这个明显的例子,从网站解释关系:https://www.baeldung.com/jpa-hibernate-associations
代码:
@Entity
public class Employee {
@Id
private Long id;
@OneToOne
@JoinColumn(name = "parking_spot_id")
private ParkingSpot parkingSpot;
}
@Entity
public class ParkingSpot {
@Id
private Long id;
}
1条答案
按热度按时间wvyml7n51#
MySQL数据库中的关系不依赖于Hibernate关系定义。Hibernate annotation @OneToOne用于指定程序的特定关系-因为Hibernate将期望数据库中已经存在的一致表的一对一关系。如果你想在数据库中获得一对一的关系,只需删除旧的一对多关系的表,并创建一对一的新表(使用本教程-https://dotnettutorials.net/lesson/database-relationships-in-mysql/)-你不需要Hibernate。