欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

java在網(wǎng)站制作實(shí)現(xiàn)多級(jí)菜單方法

2021-11-26    分類: 網(wǎng)站制作

java實(shí)現(xiàn)多級(jí)菜單的方法
網(wǎng)站開發(fā)的時(shí)候我們會(huì)對(duì)網(wǎng)站的欄目進(jìn)行分類,一個(gè)欄目可以有多個(gè)子分類,一個(gè)子分類又可以有分裂
1,查詢菜單樹:

public List<Map<String, Object>> queryCategoryInfo() {
List<Map<String, Object>> allMenu = queryAllCategory();
//根節(jié)點(diǎn)
List<Map<String, Object>> rootMenu = new ArrayList<Map<String, Object>>();
for (Map<String, Object> nav : allMenu) {
String parentId = String.valueOf(nav.get("parent_id"));
if(parentId.equals("0")){//父節(jié)點(diǎn)是0的,為根節(jié)點(diǎn)。
rootMenu.add(nav);
}
}
/* 根據(jù)Menu類的order排序 */
// Collections.sort(rootMenu, order());
//為根菜單設(shè)置子菜單,getClild是遞歸調(diào)用的
for (Map<String, Object> nav : rootMenu) {
/* 獲取根節(jié)點(diǎn)下的所有子節(jié)點(diǎn) 使用getChild方法*/
String id = String.valueOf(nav.get("category_id"));
List<Map<String, Object>> childList = getChild(id, allMenu);
// nav.setChildren(childList);//給根節(jié)點(diǎn)設(shè)置子節(jié)點(diǎn)
nav.put("child", childList);
}
return rootMenu;
}
/**
* 獲取子節(jié)點(diǎn)
* @param id 父節(jié)點(diǎn)id
* @param allMenu 所有菜單列表
* @return 每個(gè)根節(jié)點(diǎn)下,所有子菜單列表
*/
private List<Map<String, Object>> getChild(String id,List<Map<String, Object>> allMenu){
//子菜單
List<Map<String, Object>> childList = new ArrayList<Map<String, Object>>();
for (Map<String, Object> nav : allMenu) {
// 遍歷所有節(jié)點(diǎn),將所有菜單的父id與傳過(guò)來(lái)的根節(jié)點(diǎn)的id比較
//相等說(shuō)明:為該根節(jié)點(diǎn)的子節(jié)點(diǎn)。
String parentId = String.valueOf(nav.get("parent_id"));
if(id.equals(parentId)){
childList.add(nav);
}
}
//遞歸
for (Map<String, Object> nav : childList) {
String tempId = String.valueOf(nav.get("category_id"));
//nav.setChildren(,getChild(tempId, allMenu));
nav.put("child", getChild(tempId, allMenu));
}
//Collections.sort(childList,order());//排序
//如果節(jié)點(diǎn)下沒有子節(jié)點(diǎn),返回一個(gè)空List(遞歸退出)
if(childList.size() == 0){
return new ArrayList<Map<String, Object>>();
}
return childList;
}


2,Java 集合 之 List 多級(jí)菜單;
package com.menu;
import java.util.List;
public class TestCategory
{
public static String level="";
public static void main(String[] args)
{
MenuManager mm=new MenuManager();
mm.add(new Menu(0,-1,"主控管理系統(tǒng)"));
mm.add(new Menu(100,0,"主控管理"));
mm.add(new Menu(101,0,"公共信息"));
mm.add(new Menu(102,0,"本單位管理"));
mm.add(new Menu(103,0,"下屬管理"));
mm.add(new Menu(104,0,"部門管理"));
mm.add(new Menu(105,0,"職位管理"));
mm.add(new Menu(10000,104,"部門類別"));
mm.add(new Menu(10001,104,"部門信息"));
List<Menu> menuList=mm.getMenuList();
for(int i=0;i<menuList.size();i++)
{
Menu menu=menuList.get(i);
if(menu.getPid()==-1)
{
System.out.println(menu.getName());
showMenu(menu,menuList);
break;
}
}
}
public static void showMenu(Menu parentMenu,List<Menu> menuList)
{
level+="----";
for(int i=0;i<menuList.size();i++)
{
Menu menu=menuList.get(i);
if(menu.getPid()==parentMenu.getId())
{
System.out.println(level+menu.getName());
showMenu(menu,menuList);
}
}
level=level.substring(0,level.length()-4);
}
}
package com.menu;
public class Menu
{
private int id;
private int pid;
private String name;
public Menu(int id, int pid, String name)
{
super();
this.id = id;
this.pid = pid;
this.name = name;
}
public int getId()
{
return id;
}
public void setId(int id)
{
this.id = id;
}
public int getPid()
{
return pid;
}
public void setPid(int pid)
{
this.pid = pid;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
package com.menu;
import java.util.ArrayList;
import java.util.List;
public class MenuManager
{
private List<Menu> menuList=new ArrayList<Menu>();
public void add(Menu menu)
{
menuList.add(menu);
}
public List<Menu> getMenuList()
{
return menuList;
}
public void setMenuList(List<Menu> menuList)
{
this.menuList = menuList;
}
}

網(wǎng)頁(yè)名稱:java在網(wǎng)站制作實(shí)現(xiàn)多級(jí)菜單方法
URL鏈接:http://aaarwkj.com/news27/137577.html

網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營(yíng)銷seo公司;服務(wù)項(xiàng)目有網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
亚洲码与欧洲码一二三| 91久久国产综合精品| 亚洲成人久久久久久久| 国产在线观看不卡视频| 激情亚洲不卡一区二区| 久久偷拍精品视频久久| 欧美日韩性性在线观看| 国产一区二区三区av| 色婷婷激一区二区三区| 91口爆吞精国产对白| 日本高清免费中文字幕| 国产情侣自拍在线观看| 久久国产精品亚洲欧美| 97在线公开免费视频| 亚洲av永久国产剧情| 九九热精品在线观看视频| 亚洲av乱码久久精品蜜桃| 亚洲午夜天堂在线a毛片| 亚洲av十八禁在线播放| 一区二区三区四区四虎| 婷婷国产成人久久精品激情| 老牛av一区二区三区| 欧美激情韩国三级日本| 国产胖中年妇女草逼网站| 日韩精品国产一区二区在线观看| 欧美日在线观看加勒比| 91精品国产综合久久男男| 成人午夜欧美熟妇小视频| 日本成人一区二区三区在线| 中文字幕av二区三区人妻| 成人免费激情在线观看| 日韩传媒在线观看视频| 欧美黄片高清免费播放| 精品一区精品二区国产日韩| 国产真人免费作爱视频网站| 蜜臀视频在线观看免费| 国产精品黄色片在线观看| 蜜桃免费观看在线视频| 91精品在线观看第一页| 日韩电影在线一本二本三本| 美国一级黄片在线观看|