首先,我要感谢大家阅读本文。 我想这个问题之前可能会在这个论坛上被问过,但我找不到它,可能因为我不知道如何搜索它。任何帮助都非常有用。
在我的Java应用程序的数据库中,有两个表使用多对多关系相互关联。当然,它们之间有一个链接表。
表1:模块
列:Id,名称等
表2:状态
列:Id,名称
表3:Module_status
列:Module_Id,Status_Id,Status_Value
当我在hibernate中设置多对多关系时,生成的类Module有一个Status列表,但是我需要的一个信息是在Module_status表中,这是给定Module上这个Status的值。登记/> 有没有办法以我可以在Module对象中检索此信息的方式配置框架?
答案 0 :(得分:4)
Module_Status表不仅仅是其他两个表之间的连接表。它包含其他信息。因此它就像所有其他函数表一样,应该映射为实体。你会有
Module {
@OneToMany
Set<ModuleSatus>
}
ModuleStatus {
@ManyToOne
Module
@ManyToOne
Status
}
Status {
@OneToMany
Set<ModuleStatus>
}
为了使映射和您的生活更简单,并且模型清晰,我还建议您在此Module_Status表中添加单列自动生成的ID列,就像其他实体一样。