Hibernate(JPA)映射HashMap
预读:
如何使用hibernate持久化HashMap
我的问题围绕着我要用JPA映射的以下结构:
Map<User, List>
我的POJO非常简单(没有复合类型等,只有一些原语)。
如何在链接问题中实施建议? 如何使用@Lob
仅注释List
部分(当我只是注释该字段时,我得到一个类转换错误,因为HashMap不能转换为Blob,这是我的问题的根源 – 我不能只注释地图的价值部分)?
我不确定是否需要创建一个实现Serial包装List的包装类型,或者只使用ArrayList,它本身就是Serializable。 无论如何,我没有设法坚持这个Map实例……
顺便说一句,我愿意接受有关这一切的不同建议:我可以将List作为每个用户的类成员,尽管我不认为它属于那里,因为它不是用户数据(如帐户数据) ;姓名,地址等)。 它类似于购买,所以我把它们放在一个类似实用程序的类(用户类外部)来处理这些购买,以便拥有更多的模块化模型。 我想听听关于这听起来是否明智的建议。
任何有用的建议都将获得虚构的cookie(显然是upvotes)。
它们在非虚构的意义上是无脂肪的。
干杯。
如果你有一张地图,你可能有一对多的关系。 将您的列表粘贴在用户中并使您的POJO成为一个实体,不要愚弄@Lob,Map是等待发生的灾难(哈希值/等于问题)并且不提供干净的数据库映射。
- 使用JPA(Hibernate)查找包含给定记录的页面
- 让DbUnit使用Hibernate事务
- Hibernate / JPA中注释字段或getter方法之间的性能差异
- 使用Hibernate将Oracle Date映射到Java对象
- java.lang.NoClassDefFoundError:org / hibernate / cache / EntityRegion配置EHCache
- 没有为jdbc找到合适的驱动程序:mysql:// localhost:3306 / test
- 多对多关系的属性(Hibernate)
- 什么是在hibernate实体和数据传输对象之间进行转换的好模式?
- 如何阻止Hibernate急切地获取多对一关联对象