在课堂上保留以下地图的最佳方法是什么:
@Entity
class MyClass {
@ManyToMany(cascade = CascadeType.ALL)
Map<Integer,Float> myMap = new HashMap<Integer, Float>();
}
我试过这个,但代码导致:
引起:org.hibernate.AnnotationException:使用@OneToMany或@ManyToMany定位未映射的类:mypackage.myClass.myMap [java.lang.Float]
答案 0 :(得分:9)
您不能将@ManyToMany
与Integer
和Float
一起使用,因为这些类型是值类型,而不是实体。使用@ElementCollection
(自Hibernate 3.5开始)或@CollectionOfElements
(以前的版本)。
@ElementCollection
Map<Integer,Float> myMap = new HashMap<Integer, Float>();
另见: