1

我正在使用 JPA 1.0 并有以下表格,即类型、指南和地址(为清楚起见简化名称并以粗体突出显示)这是一个场景,其中 3 个表之间的关系建立在复合键上。每个表的非关键字段都在实线下方。

关系

Type One --------> Many Guide
Guide Many <--------- 一个 地址

类型

代码 PK
日期1 PK


姓名

指南
代码 FK
日期 1 FK

地址标识符 FK

日期2 FK


价值

地址

地址标识符 PK

日期2 PK


邮政编码

(请原谅上面的格式问题)我想从 Type 表开始并取消复合键 Code 和 Date1,从 Guide 表中获取多行(作为列表)。然后从我想在地址表中获取单行的行中使用 Addr Identifier 和 Date2 。请注意,这些是参考表,数据不会更改,因此这些表中的任何一个都没有删除或更新

我已经尝试过这组简单的注释,它们返回空列表。(为了清楚起见,代码被简化)

1)

@Entity
@Table(name = "Type")
public Class Type
@OneToMany(mappedBy = "type", fetch = FetchType.EAGER)
private List<Guide> listGuide;

    getListGuide() {
        return listGuide;
    }

2)

@Entity
@Table(name = "Guide")
public Class Guide

@ManyToOne
@JoinColumns({@JoinColumn(name = "Code"),
         @JoinColumn(name = "Date1") })
private Type type;

当我使用 getListGuide() 时,我得到一个空列表。

你能建议一个解决方案吗?

我还需要 Guide 和 Address 实体之间的映射解决方案。

问候,

4

0 回答 0