[b]//方法如下:[/b]
public static void main(String[] args) {
List<Bean> list=new ArrayList<Bean>();
Bean b1=new Bean("1","控件使用","");
Bean b2=new Bean("2","员工管理","");
Bean b3=new Bean("3","部门管理","");
Bean b11=new Bean("4","用户管理","1");
Bean b12=new Bean("5","角色管理","1");
Bean b22=new Bean("6","员工列表","2");
Bean b23=new Bean("7","视频监控","2");
Bean b24=new Bean("8","部门列表","3");
list.add(b22);
list.add(b11);
list.add(b1);
list.add(b12);
list.add(b2);
list.add(b23);
list.add(b3);
list.add(b24);
Map<String,List<Bean>> map=new HashMap<String, List<Bean>>();
//将list中的所有对象以键值对的方式保存
for(Bean bean : list){
String pid=bean.getPId();
if(map.get(pid)==null){
map.put(pid, new ArrayList<Bean>());
}
map.get(pid).add(bean);
}
//获得所有父节点集合
List<Bean> list1= map.get("");
List<MenuBean> jsonList=new ArrayList<MenuBean>();
//遍历父节点
for(Bean b : list1){
MenuBean m1=new MenuBean();
m1.setMenuid("1");//或m1.setMenuid(b.getMenuid());
m1.setIcon("icon-sys");
m1.setMenuname("控件使用");
//获取当前父节点所有子节点
List<Bean> list2=map.get(b.getId());
//遍历子节点
for(Bean b111 : list2){
MenuBean m2=new MenuBean();
m2.setIcon("icon-sys");
m2.setMenuid("2");
m2.setMenuname("员工管理22");
m2.setUrl("http://www.baidu.com");
m1.getMenus().add(m2);
}
jsonList.add(m1);
}
}
//MenuBean类
public class MenuBean {
private String menuid;
private String menuname;
private String icon;
private String url;
private List<MenuBean> menus=new ArrayList<MenuBean>();
}
public static void main(String[] args) {
List<Bean> list=new ArrayList<Bean>();
Bean b1=new Bean("1","控件使用","");
Bean b2=new Bean("2","员工管理","");
Bean b3=new Bean("3","部门管理","");
Bean b11=new Bean("4","用户管理","1");
Bean b12=new Bean("5","角色管理","1");
Bean b22=new Bean("6","员工列表","2");
Bean b23=new Bean("7","视频监控","2");
Bean b24=new Bean("8","部门列表","3");
list.add(b22);
list.add(b11);
list.add(b1);
list.add(b12);
list.add(b2);
list.add(b23);
list.add(b3);
list.add(b24);
Map<String,List<Bean>> map=new HashMap<String, List<Bean>>();
//将list中的所有对象以键值对的方式保存
for(Bean bean : list){
String pid=bean.getPId();
if(map.get(pid)==null){
map.put(pid, new ArrayList<Bean>());
}
map.get(pid).add(bean);
}
//获得所有父节点集合
List<Bean> list1= map.get("");
List<MenuBean> jsonList=new ArrayList<MenuBean>();
//遍历父节点
for(Bean b : list1){
MenuBean m1=new MenuBean();
m1.setMenuid("1");//或m1.setMenuid(b.getMenuid());
m1.setIcon("icon-sys");
m1.setMenuname("控件使用");
//获取当前父节点所有子节点
List<Bean> list2=map.get(b.getId());
//遍历子节点
for(Bean b111 : list2){
MenuBean m2=new MenuBean();
m2.setIcon("icon-sys");
m2.setMenuid("2");
m2.setMenuname("员工管理22");
m2.setUrl("http://www.baidu.com");
m1.getMenus().add(m2);
}
jsonList.add(m1);
}
}
//MenuBean类
public class MenuBean {
private String menuid;
private String menuname;
private String icon;
private String url;
private List<MenuBean> menus=new ArrayList<MenuBean>();
}