如何在Hibernate中创建数据库

时间:2015-12-03 11:18:21

标签: java hibernate

我正在实现一个项目,我必须在其中创建多重映射表。

@Entity
public class UserBuilding {
    @Id @GeneratedValue
    private int userBuildingId;
    @OneToOne
    private User user;

    private HashMap<Building,ArrayList<Horizontal>> userWork;
}

这是我的实体类,我想为此创建表。 用户和建筑物和水平线也是实体。

private HashMap<Building,ArrayList<Horizontal>> userWork;
一个建筑可以有多个水平线。 我很困惑我应该写什么注释来创建上述关系。

1 个答案:

答案 0 :(得分:0)

我不相信你可以直接完成收藏地图。至少没有创建自己的自定义hibernate用户类型。

根据您的型号,您可能需要考虑直接将您的水平线集合与Building实体相关联,并在Building而不是地图中放置一组UserBuilding个实体。这可能会给您带来相同的模型优势,减少麻烦。

如果您必须拥有地图,则常见的解决方法是为ArrayList<Horizontal>创建中间实体,例如HorizontalCollection