package org.exitsoft.orm.test.entity; import java.util.List; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.Table; @Entity @Table(name="TB_ACCOUNT_MENU") public class Menu extends UniversallyUniqueIdentifier{ //名称 private String name; //所属父类 private Menu parent; //拥有子菜单 private List<Menu> childerList; private int type; /** * 构造方法 */ public Menu() { } /** * 获取菜单名称 * @return String */ public String getName() { return name; } /** * 设置菜单名称 * @param name 菜单名称 */ public void setName(String name) { this.name = name; } /** * 获取父类菜单 * @return {@link Menu} */ @ManyToOne @JoinColumn(name = "FK_PARENT_ID") public Menu getParent() { return parent; } /** * 设置父类菜单 * @param parent 父类菜单 */ public void setParent(Menu parent) { this.parent = parent; } /** * 获取子菜单 * @return List */ @OneToMany(mappedBy = "parent",cascade={CascadeType.ALL},fetch=FetchType.LAZY) public List<Menu> getChilderList() { return childerList; } /** * 设置子菜单 * @param childerList 子菜单 */ public void setChilderList(List<Menu> childerList) { this.childerList = childerList; } public int getType() { return type; } public void setType(int type) { this.type = type; } }