休眠 - 优化ManyToMany关系
问题描述:
我需要Hibernate和多对多关系的帮助。这是我在link上的示例模式。这很简单,所以你可以很容易地明白这一点。浓度见表PERSON
,ADDRESS
和PERSON_ADDRESS
。休眠 - 优化ManyToMany关系
Java模型在这里link。我的问题是:
- 那个班级
PersonAddress
是完全错误的吗? - 如果我这样说吧,在发展的后期阶段,我会遇到什么问题?
- 我该如何优化它?
我的示例代码的Git回购是here。
答
类PersonAddress
被称为连接表。 Hibernate支持连接表,你不需要额外的努力来实现它。但我不确定是否可以将其他属性添加到连接表中。 Hiberante bidirectional association
对于附加属性在你的连接表,你应该与@Embeddable和@EmbeddedId注解,但后来去大部分参加工作,你会做你自己的,看看这个答案,Hiberante additional properties in join table.
你不有明确的MN关系。这是一个具有关系上额外属性的M-N,因此引入一个中间类(如你所做的那样)并且有两个1-N关系是正确的。那么为什么不实际使用它?你在这篇文章中没有“问题”。 – 2014-09-19 06:57:46
如果我想收集地址中的人员地址和收集人员地址,该怎么办?是否需要避免'private Collection personAddressCollection'? –
shx
2014-09-20 19:12:05