0

首先,我要感谢所有阅读本文的人。我想这个问题可能以前在这个论坛上被问过,但我找不到它,可能是因为我不知道如何搜索它。任何帮助都会非常有用。

在我的 Java 应用程序的数据库中,有两个表使用多对多关系相互关联。当然,它们之间有一个链接表。

表 1:模块
列:ID、名称等

表 2:状态
列:ID、名称

表 3:Module_status
列:Module_Id、Status_Id、Status_Value

当我在hibernate中设置多对多关系时,生成的类Modules有一个Status列表,但我需要的信息之一是在Module_status表中,它是给定Module上这个Status的值。
有没有办法以我可以在 Module 对象中检索此信息的方式配置框架?

4

1 回答 1

4

Module_Status 表不仅仅是其他两个之间的连接表。它包含附加信息。因此,它是一个与所有其他表一样的功能表,应该映射为一个实体。你会因此有

Module {
    @OneToMany
    Set<ModuleSatus>
}

ModuleStatus {
    @ManyToOne
    Module

    @ManyToOne
    Status
}

Status {
    @OneToMany
    Set<ModuleStatus>
}

为了使映射和你的生活更简单,你的模型更干净,我真的建议你在这个 Module_Status 表中添加一个单列、自动生成的 ID 列,就像其他实体一样。

于 2013-07-20T15:23:56.243 回答