【发布时间】:2012-05-02 16:54:28
【问题描述】:
我需要帮助在 JPA2 中存储地图,其中键和值都是枚举 (Map<Enum, Enum>)。使用 Hibernate 作为我的 JPA 提供程序,它将枚举存储为 blob,但我需要将数据存储为字符串。我尝试了以下注释来解决此问题:
@ElementCollection(fetch = FetchType.EAGER)
@MapKeyEnumerated(value = EnumType.STRING)
public Map<Enum, Enum> getElementsMap() {
return elementsMap;
}
但数据仍以 blob 形式存储到数据库中。有人解决了这个问题吗?
【问题讨论】:
-
将地图保存为字符串听起来一点也不明智。您听说过数据规范化吗?
-
对不起,我写错了这个问题,现在它已经修复了,我的意思是键和值。
-
您可以在键和值上都使用
toString()。有什么问题? -
我不认为这是非常基本的东西,看看这篇文章:forum.hibernate.org/viewtopic.php?f=1&t=999270&start=0也许你应该参考一本Java初学者的书。
-
@Niklas B. 在你写东西之前有人建议他读一些东西,三思而后行!如果您确实不了解某个问题并且不知道具体的解决方案,请不要向您不相关的 cmets 发送垃圾问题,并在发布答案之前尝试研究一些想法。
标签: java hibernate postgresql enums jpa-2.0