我正在尝试将我的多层菜单存储在数据库中。我有一个HorizontalMenu
包含List<MenuItem>
其项目的类。我的MenuItem
类包含一个String
用于文本、一个String
用于 URL 和另一个HorizontalMenu
用于子菜单(如果有的话)。
所以我的主菜单可以有任意数量的MenuItem
s,每个可以有零或一个HorizontalMenu
s。
所以我想知道如何在代码中准确设置它,以便在数据库中正确设置。
我正在使用 Ebeans 和 Play Framework 2.0,所以在这些方面的答案会很好,但如果有人可以用 DB 术语指出我正确的方向,那也很好。
这是我到目前为止所得到的:
HorizontalMenu.java:
@Entity
@Embeddable
public class HorizontalMenu extends Model{
@Id
@GeneratedValue
public Long id;
public List<MenuItem> items;
public Long getId()
{
return this.id;
}
public void setId(Long id)
{
this.id = id;
}
public List<MenuItem> getItems()
{
return this.items;
}
public void setItems(List<MenuItem> items)
{
this.items = items;
}
public static Finder find = new Finder(Long.class, HorizontalMenu.class);
}
菜单项.java:
@Entity
@Embeddable
public class MenuItem {
@Id
public Long id;
public String text;
public String url;
public HorizontalMenu subMenu;
}