簡體   English   中英

如何在Hibernate中將地圖持久化?

[英]How to persist a map inside a map in Hibernate?

所以我有一個與此類似的課程

public class MyClass{ 
...

@ElementCollection
private Map<Long,Map<Long,Double>> Vs = new HashMap<Long, Map<Long,Double>>(); 

...
}

當我嘗試保留該類時,這將返回錯誤:

org.hibernate.MappingException: Could not determine type for: java.util.Map, at table: MyClass_Vs, for columns: [org.hibernate.mapping.Column(Vs)]

我認為錯誤是因為原始地圖中有一個具有@ElementCollection注釋的地圖。 有什么解決辦法的想法嗎?

我真的懷疑Hibernate是否僅使用@ElementCollection就能為您處理這種類型的映射。 您可能需要定義一個新的組合鍵,將這兩個Long映射鍵都包含為@Id字段,然后在Map<CompositeLong, Double>上使用元素集合。 當然,我對這些Long值代表什么進行了一些假設,但是如果沒有更多上下文,很難說得出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM