使用@MapKeyJoinColumn映射三重连接表

时间:2015-02-06 14:41:52

标签: jpa one-to-many jointable mapkeyjoincolumn

我有3个名为“电影”,“人物”和“角色”的实体,一个人在电影中扮演某个角色。

在我的数据库中,我有这3个实体并链接它们,一个表: 演员(id_movie,id_person,id_role)都是主要的,因为一个人可以是例如制作人和演员。

到目前为止,在我的实体电影中我写了这个链接:

@OneToMany(cascade = CascadeType.ALL)
    @JoinTable(name = "distribution",
    joinColumns = @JoinColumn(name = "id_movie"),
    inverseJoinColumns = @JoinColumn(name = "id_role"))
@MapKeyJoinColumn(name = "id_pers")
private Map<Person,Role> list_cast = new HashMap<Person,Role>();

但当然它不起作用,因为地图中的键是唯一的。 所以list_cast [person]给了我唯一的最后一个角色。

0 个答案:

没有答案