@Entity
@Table(name="u_module")
public class Module {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
/**
* 模块名称
*/
private String name;
/**
* 显示位置 ,默认按照从小到大的顺序排列
*/
private int location;
/**
* 菜单的url
*/
private String url;
/**
* 添加时间
*/
@Temporal(TemporalType.TIMESTAMP)
private Date createTime = new Date();
/**
* 父节点
*/
@ManyToOne
private Module parent;
/**
* 子节点
*/
@OneToMany(mappedBy="parent",fetch=FetchType.EAGER)
@OrderBy("location,id asc")
private Collection<Module> children = new ArrayList<Module>();
mappedBy的作用是指:
其所注解的字段 children 的关系被 mappedBy所指的字段 parent 维护
即: 由 “一”的一端维护;“多”的一端被维护 ......
parent : 一
children : 多