据我了解,Many to Many两个实体A和B之间的关联意味着A在B中可以有多个值,而B在A中可以有多个值。
如果这是正确的,那是什么unidirectional many to many association意思?它与 有何不同bidirectional many to many mapping?
顾名思义many to many就是双向的!
据我了解,Many to Many两个实体A和B之间的关联意味着A在B中可以有多个值,而B在A中可以有多个值。
如果这是正确的,那是什么unidirectional many to many association意思?它与 有何不同bidirectional many to many mapping?
顾名思义many to many就是双向的!
我认为您对数据库表及其相应的实体感到困惑。
从数据库的角度来看:多对多将使用第三个表来实现,该表包含两个表中的条目。
从 java 实体的角度来看:它取决于您,如果您希望它是双向的或单向的。它简单的意思是,您可以在 Module 中拥有一个学生集合,但您可能不想关心学生属于多少个 Modules。
class Student{
//attributes and methods
}
class Module{
Collection<Student> students;
//other attributes and methods.
}
现在,在管理某个机构时,我希望能够灵活地创建模块并将学生分配到该模块。我更喜欢多对多单向。所以,如果你看到,这里实际上有很多模块和很多学生(我希望你能明白我的意思)。话虽如此,您并不局限于确定学生是否属于 Java 模块。我希望它让它更清楚一点。
单向意味着,例如,A有对Bs 的引用,但不是相反。
many to many 表示双向 No。该many to many概念用于数据库表映射。Hibernate 使用它(和其他x-to-x)来生成正确的数据库表模式。这个x-directional概念适用于 java 对象。