gpt4 book ai didi

java - Hibernate(JPA) 映射一个 HashMap

转载 作者:搜寻专家 更新时间:2023-11-01 03:29:08 26 4
gpt4 key购买 nike

预读:

How to persist a HashMap with hibernate

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

Map<User, List<POJO>>

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

如何实现链接问题中的建议?我怎样才能只用 @Lob 注释 List 部分(当我只注释字段时我得到一个类转换错误,因为 HashMap 不能转换为 Blob,这是我问题的根源——我不能只注释 map 的值部分)?

我不确定我是否需要制作一个实现可序列化的包装器类型来包装列表,或者只使用 ArrayList 就足够了,它本身就是可序列化的。在任何情况下,我都无法保留这个 Map 实例......

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

任何有帮助的建议都会得到想象中的 cookies 作为奖励(显然还有点赞)。
它们在非常非想象的意义上不含脂肪。

干杯。

最佳答案

如果您有一个 Map,则您可能拥有一对多关系。将您的列表粘贴到 User 中并使您的 POJO 成为一个实体,并且不要与 @Lob 混为一谈,Map 是一场等待发生的灾难(哈希值/等于问题)并且不提供干净的数据库映射。

关于java - Hibernate(JPA) 映射一个 HashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5266623/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com