效果图:支持多级菜单。
菜单实体类:
public class Menu {
// 菜单id
private String id;
// 菜单名称
private String name;
// 父菜单id
private String parentId;
// 菜单url
private String url;
// 菜单图标
private String icon;
// 菜单顺序
private int order;
// 子菜单
private List
// ... 省去getter和setter方法以及toString方法
}
菜单一般需要排序,我们根据Menu的order字段进行排序:
/*
* 排序,根据order排序
*/
public Comparator
Comparator
@Override
public int compare(Menu o1, Menu o2) {
if(o1.getOrder() != o2.getOrder()){
return o1.getOrder() - o2.getOrder();
}
return 0;
}
};
return comparator;
}
生成树的方法:
public Map findTree(){
Map data &#