В проекте мы должны сопоставить одну сущность двум таблицам.Таблица part_info хранит информацию о товаре, таблица part_label хранит метку, которая будет отображаться на экране.
Table part_info
id part_no part_description
Table part_label
id part_no_label part_description_label
, затем в нашем Entity
@Entity
@Table(name="part_info")
@SecondaryTable(name="part_label",pkJoinColumns= {@PrimaryKeyJoinColumn(name="id",referencedColumnName="id")})
public class PartInfo implements Serializable {
@id
private int id;
@Column(name = "part_no")
private String partNo;
@Column(name = "part_description")
private String partDesc;
@Column(table="part_label",name="part_no_label")
private String partNoLabel;
@Column(table="part_label",name="part_description_label")
private String partDescLabel;
....
}
, но это будет отображать только одну запись part_infoк одной записи part_label.
В нашем случае в другой информации о детали может использоваться одна и та же метка детали.Например, мы будем использовать метку, полученную из part_label, как показано ниже:
Part#
Part Desc
, но мы получили много информации о детали из таблицы part_info
PA123 AAA
PA123 DDD
PA234 BBB
PA345 CCC
Затем в пользовательском интерфейсе мы отобразим как:
Part#:PA123 Part Desc:AAA
Part#:PA123 Part Desc:DDD
Если использовать выше @SecondaryTabel, каждая part_info и каждая part_label являются отношениями «один-к-одному», если нужно извлечь две записи деталей PA123, также необходимо дважды извлечь одну и ту же метку.
IsЕсть ли способ, которым одна метка детали может быть сопоставлена со многими деталями детали?