对于休眠关系,是否总是需要同时拥有@oneToMany 和@manyToOne?

Is it alway necessary to have both @oneToMany and @manyToOne for a relationship in hibernate?

我有这个问题,假设我们有老师和学生实体,一个老师有很多学生,我只需要获取学生信息包括他们的老师,我永远不需要用列表获取老师学生人数。

有了那个假设的场景,是否有必要在教师实体中有一个属性来映射学生并用@oneToMany 注释,在学生实体中有一个属性来映射教师并用@ManyToOne 注释?,或者仅仅有一个属性来映射教师并在 Student 实体中用@manyToOne 注释它就足够了吗?这样可以避免在教师实体中使用不必要的属性来映射学生。

非常感谢。

双向一对多和多对一关联映射都可以。但是你应该避免在你的域模型中使用单向的一对多关联。否则,Hibernate 可能会创建意想不到的表并执行比您预期更多的 SQL 语句。