可以在@MapKeyColumn上更新和插入基于Map的@ElementCollection

时间:2012-05-17 03:55:31

标签: jpa-2.0

我有两个使用Map映射@Embeddable的示例。

http://hwellmann.blogspot.com/2010/07/jpa-20-mapping-map.html

http://www.objectdb.com/api/java/jpa/MapKeyColumn

一个人说

@MapKeyColumn(..., insertable = false, updatable = false)

另一个说

@MapKeyColumn(...) // without insertable = false, updatable = false

有人可以告诉我哪一个是对的吗?

1 个答案:

答案 0 :(得分:2)

只有第二个示例是关于映射@Embeddable。第一个是关于Map<String, String>元素集合 - 不包括嵌入式。

可插入和可更新在第二个中设置为false的原因是元素集合中的“language”属性可以通过地图的键和地图的值来访问。将其中一个作为readonly保存,可以保存地图密钥和“语言”属性中的冲突数据。

Map<String, String>不需要将可插入和可更新设置为false,因为只有地图的键只映射一次。