Hibernate映射问题

Hibernate映射问题,hibernate,map,hibernate-mapping,Hibernate,Map,Hibernate Mapping,您好,我正在尝试在Hibernate中保存一个映射,如下所示: public class Product{ @OneToMany @MapKey(name="id") private Map<Company,ProductCompany> productCompanies=new HashMap<Company,ProductCompany>(); } public class Company{ private int id; } public c

您好,我正在尝试在Hibernate中保存一个映射,如下所示:

public class Product{
    @OneToMany
    @MapKey(name="id")
 private Map<Company,ProductCompany> productCompanies=new HashMap<Company,ProductCompany>();

}

public class Company{
 private int id;
}
public class ProductCompany(){
 @ManyToOne
 private Product product;
 @ManyToOne
 private Company company;
}
公共类产品{
@独身癖
@映射键(name=“id”)
private Map ProductCompanys=new HashMap();
}
公营公司{
私有int-id;
}
公共类产品公司(){
@许多酮
私人产品;
@许多酮
私营公司;
}
你知道做这个映射的正确注释是什么吗?目前,它将密钥集存储为int…而不是公司对象


Thxs.

尝试使用公司作为地图键:

public class Product{
@OneToMany
@MapKey(name="company")
private Map<Company,ProductCompany> productCompanies=new HashMap<Company,ProductCompany>();
}
公共类产品{
@独身癖
@MapKey(name=“公司”)
private Map ProductCompanys=new HashMap();
}

在执行命令之前,尝试构建您的项目

类似的帖子:那没有帮助…我正在将实体映射为键而不是字符串