【问题标题】:Eclipse + Hibernate + Spring questionEclipse + Hibernate + Spring 问题
【发布时间】:2011-05-19 01:38:50
【问题描述】:

我不知道如何在项目中组织课程...

我需要向所有工人展示他们的专业(类型)历史。

我在数据库中有 3 个表: 工人:身份证、姓名、地址 特长:id,描述 Worker_Type:id_worker、id_specialty、hire_date

我有:

class Specialty
{
    ... 
}

class Worker
{
    private List<Specialty> history;
    ...
}

如何将 Specialty(Class) 映射到两个表(Specialty 和 Worker_Specialty)以获取有关工人包含历史的所有信息?

也许我必须再创建一个类 SpecialtyHistory 并将其映射到 Worker_Specialty ?

【问题讨论】:

    标签: java hibernate spring


    【解决方案1】:

    您所描述的称为三元关联,或者换句话说,多对多关系,包括添加有关关系本身的信息。有几种映射三元关联的方法,其中一种是创建一个如您提到的 SpecialtyHistory 类,将关系视为第一类实体。如果您不需要hire_date,您可以使用普通的多对多映射。

    Hibernate 文档有关于 ternary associations 的更多信息。

    以前的一些 * 问题:hibernate: ternary association mappingTernary (and n-ary) relationships in Hibernate

    【讨论】: