使用JPA </integer,float>保持Map <integer,float>

时间:2011-01-31 10:00:39

标签: java hibernate jpa

在课堂上保留以下地图的最佳方法是什么:

  @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]

1 个答案:

答案 0 :(得分:9)

您不能将@ManyToManyIntegerFloat一起使用,因为这些类型是值类型,而不是实体。使用@ElementCollection(自Hibernate 3.5开始)或@CollectionOfElements(以前的版本)。

@ElementCollection
Map<Integer,Float> myMap = new HashMap<Integer, Float>();  

另见: