簡體   English   中英

如何用休眠映射多對多關系

[英]How to map many to many relationship with hibernate

我有一個要求,用戶可以根據位置搜索餐館並檢查餐館的菜單。 菜單包含各種項目,例如湯,開胃菜,主菜等。管理員用戶應該能夠新建餐廳,菜單以及項目及其價格。

現在在Java中,我有這種關系,我只是為了清楚起見添加了所需的代碼:

Restaurant.java

@Entity
public class Restaurant {

    @Id
    private Long id;
    private String name;

    @OneToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "restaurant_menu")
    private Menu menu;
}

Menu.java

@Entity
public class Menu {

    @Id
    private Long id;
    private String name;

    @ManyToMany(cascade = CascadeType.ALL)
    @JoinTable(name = "menu_soups", joinColumns = { @JoinColumn(name = "menu_id") }, inverseJoinColumns = { @JoinColumn(name = "soup_id") })
    private Set<Soup> soups = new HashSet<Soup>();
}

@Entity
public class Soup {

    @Id
    private Long id;
    private String name;
}

現在我很困惑,我應該在哪里保存價格詳細信息。 由於菜單和湯具有多對多關系,因此我應該維護一個單獨的表。 但是如何在休眠狀態下執行此操作。

看看這個- 答案 ,該答案解釋了如何在多對多關系上具有屬性,這是您基本上需要的。

暫無
暫無

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

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