java – Hibernate(JPA)映射HashMap

预读:

How to persist a HashMap with hibernate

我的问题围绕着我想用JPA映射的以下结构:

Map<User, List<POJO>>

我的POJO非常简单(没有复合类型等,只有一些原语).

如何在链接问题中实施建议?如何使用@Lob仅注释List部分(当我只是注释该字段时,我得到一个类转换错误,因为HashMap无法转换为Blob,这是我的问题的根源 – 我不能只注释地图的价值部分)?

我不确定是否需要创建一个实现Serial包装List的包装类型,或者只使用ArrayList,它本身就是Serializable.
无论如何,我没有设法坚持这个Map实例……

顺便说一下,我愿意接受关于这一切的不同建议:我可以将List作为每个用户的类成员,尽管我不认为它属于那里,因为它不是用户数据(如帐户数据) ;姓名,地址等).它类似于购买,所以我把它们放在一个类似实用程序的类(User类外部)来处理这些购买,以便拥有更多的模块化模型.我想听听关于这听起来是否明智的建议.

任何有用的建议都将获得虚构的cookie(显然是upvotes).
它们在非虚构的意义上是无脂肪的.

干杯.

最佳答案 如果你有一张地图,你可能有一对多的关系.将您的列表粘贴在用户中并使您的POJO成为一个实体,并且不要愚弄@Lob,Map是等待发生的灾难(哈希值/等于问题)并且不提供干净的数据库映射.

点赞