使用实体映射映射作为JPA中的键

时间:2012-07-04 08:15:56

标签: java jpa orm mapping

是否可以映射:

@ManyToMany(cascade = Array(CascadeType.ALL), fetch = FetchType.EAGER)
Map<Entity, Double> quantities;

而不是:

Map<Double, Entity>

如果没有,您如何映射商店购物篮中的示例商品数量(没有专用表格)?

提前致谢, 艾格。

2 个答案:

答案 0 :(得分:1)

是的,它可以在没有其他实体的情况下进行映射,例如,请参阅Hibernate: mapping many-to-many to Map

另请注意,无论如何都会使用专用表,它只是可以映射为实体,而不是。

答案 1 :(得分:1)

您可以使用@ElementCollection和@MapKeyJoinColumn,

http://en.wikibooks.org/wiki/Java_Persistence/Relationships#Map_Key_Columns_.28JPA_2.0.29

但它是一种不寻常的模型,你可能最好创建一个实体来映射到连接表。