t6 = Test6.class.newInstance();
List<Menu> mList = t6.getMenu();
Menu m = null;
List<Menu> m1 = new ArrayList<Menu>();
List<Menu> m2 = new ArrayList<Menu>();
List<Menu> m3 = new ArrayList<Menu>();
for (int i = 0; i < mList.size(); i++)
{
m = mList.get(i);
if("0".equals(m.getPid())){//表示第一级
m1.add(m);
mList.remove(i);
i--;
}
if(m.getPid().length() == 3){//表示二级
m2.add(m);
mList.remove(i);
i--;
}
if(m.getPid().length() == 5){//表示三级
m3.add(m);
mList.remove(i);
i--;
}
}
System.out.println("/////////////////////////");
//拼接菜单树的三级json
// [{'id':901'name':学校1,'childNotes':[{'id':90101'name':学校1班级1,'childNotes':[{'id':9010101'name':学校1班级1组1},{'id':9010102'name':学校1班级1组2}]},
// {'id':90102'name':学校1班级2,'childNotes':[]}]},
// {'id':902'name':学校2,'childNotes':[{'id':90201'name':学校2班级1,'childNotes':[]},{'id':90202'name':学校2班级2,'childNotes':[]}]}]
StringBuilder sb = new StringBuilder("[");
Menu mt1 = null;
Menu mt2 = null;
Menu mt3 = null;
for (int i = 0; i < m1.size(); i++)
{
mt1 = m1.get(i);
sb.append("{");
sb.append("'id':"+mt1.getMid());
sb.append("'name':"+mt1.getmName());
sb.append(",'childNotes':[");
for (int j = 0; j < m2.size(); j++)
{
mt2 = m2.get(j);
if(mt1.getMid().equals(mt2.getPid())){//如果二级的父id与一级id一样
sb.append("{");
sb.append("'id':"+mt2.getMid());
sb.append("'name':"+mt2.getmName());
sb.append(",'childNotes':[");
for (int j2 = 0; j2 < m3.size(); j2++)
{
mt3 = m3.get(j2);
if(mt2.getMid().equals(mt3.getPid())){
sb.append("{");
sb.append("'id':"+mt3.getMid());
sb.append("'name':"+mt3.getmName());
sb.append("},");
}
}
if(regexCheckStr(".*,",sb.toString())){
sb.replace(sb.length()-1, sb.length(), "");
}
sb.append("]");
sb.append("},");
}
}
if(regexCheckStr(".*,",sb.toString())){
sb.replace(sb.length()-1, sb.length(), "");
}
sb.append("]");
sb.append("},");
}
//[{id:'',name:'',ch:[{id:name:ch:[{}]},{}]},
// {id:'',name:'',ch:[]}]
if(regexCheckStr(".*,",sb.toString())){//是否以,结束,是就将,替换为空
sb.replace(sb.length()-1, sb.length(), "");
}
sb.append("]");
System.out.println(sb.toString());
分享到:
相关推荐
json实现省市县三级联动下拉框,从数据库读取数据到页面显示!
运用Ajax实现3级的级联菜单。ajax是浏览器中的js程序向服务器端发送异步请求,返回的数据为json类型。
Java右键弹出菜单源码 简单 Java圆形按钮实例代码,含注释 两个目标文件,自绘button。 Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟 用JAVA编写的指针式圆形电子钟,效果图如下所示...
Java右键弹出菜单源码 简单 Java圆形按钮实例代码,含注释 两个目标文件,自绘button。 Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟 用JAVA编写的指针式圆形电子钟,效果图如下所示...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
主要介绍了JAVA后台转换成树结构数据返回给前端的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...
权限管理:点开⼆级菜单进⼊三级菜单显⽰ ⾓⾊(基础权限)和按钮权限 ⾓⾊(基础权限): 分⾓⾊组和⾓⾊,独⽴分配菜单权限和增删改查权限。(⼀个⽤户可以多个⾓⾊) 按钮权限: 给⾓⾊分配按钮权限。 2. 按钮管理:⾃...