• <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <small id="ggggg"></small> <sup id="ggggg"></sup>
    <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <tfoot id="ggggg"></tfoot>
  • <nav id="ggggg"><cite id="ggggg"></cite></nav>
    <nav id="ggggg"></nav>
    成人黃色A片免费看三更小说,精品人妻av区波多野结衣,亚洲第一极品精品无码,欧美综合区自拍亚洲综合,久久99青青精品免费观看,中文字幕在线中字日韩 ,亚洲国产精品18久久久久久,黄色在线免费观看

    根據json文件生成動態菜單

    2018-5-31    seo達人

    如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

    [plain] view plain copy
    1. <span style="font-family:SimSun;font-size:16px;">admin.json</span>  
    [plain] view plain copy
    1. <span style="font-family:SimSun;font-size:16px;">[  
    2.     {  
    3.         "image": "glyphicon glyphicon-home",//菜單前的圖標  
    4.         "name": "設備管理",  
    5.         "submenu": [  
    6.             {  
    7.                 "image": "glyphicon glyphicon-cloud",  
    8.                 "name": "設備分類",  
    9.                 "submenu": [  
    10.                     {  
    11.                         "image": "glyphicon glyphicon-off",  
    12.                         "name": "電源管理",  
    13.                         "url": "html/Node/creditCardPower.html"  
    14.                     },  
    15.                     {  
    16.                             "image": "glyphicon glyphicon-lock",  
    17.                         "name": "門禁管理",  
    18.                         "url": "html/Guard/guardList.html"  
    19.                     },  
    20.                     {  
    21.                         "image": "glyphicon glyphicon-folder-open",  
    22.                         "name": "物品管理",  
    23.                         "url": "html/goods/goodsList.html"  
    24.                     },  
    25.                     {  
    26.                         "image": "glyphicon glyphicon-facetime-video",  
    27.                         "name": "視頻管理",  
    28.                         "url": "html/monitor/monitorList.html"  
    29.                     }  
    30.                 ]  
    31.             }  
    32.         ]  
    33.     },  
    34.     {  
    35.         "image": "glyphicon glyphicon-cog",  
    36.         "name": "系統設置",  
    37.         "submenu": [  
    38.             {  
    39.                 "image": "glyphicon glyphicon-heart",  
    40.                 "name": "用戶管理",  
    41.                 "submenu": [  
    42.                     {  
    43.                         "image": "glyphicon glyphicon-align-justify",  
    44.                         "name": "用戶列表",  
    45.                         "url": "html/User/userList.html"  
    46.                     },  
    47.                     {  
    48.                         "image": "glyphicon glyphicon-random",  
    49.                         "name": "組織機構",  
    50.                         "url": "html/dept/framework.html"  
    51.                     }  
    52.                 ]  
    53.             },  
    54.             {  
    55.                 "image": "glyphicon glyphicon-wrench",  
    56.                 "name": "設備管理",  
    57.                 "submenu": [  
    58.                     {  
    59.                         "image": "glyphicon glyphicon-edit",  
    60.                         "name": "設備參數",  
    61.                         "url": "html/Device/DeviceList.html"  
    62.                     },  
    63.                     {  
    64.                         "image": "glyphicon glyphicon-edit",  
    65.                         "name": "物品庫",  
    66.                         "url": "html/equgoods/equGoodsList.html"  
    67.                     }  
    68.                 ]  
    69.             }  
    70.         ]  
    71.     },  
    72.     {  
    73.         "image": "glyphicon glyphicon-list",  
    74.         "name": "日志管理",  
    75.         "submenu": [  
    76.             {  
    77.                 "image": "glyphicon glyphicon-list-alt",  
    78.                 "name": "登入日志",  
    79.                 "url": "html/Log/loginlog.html"  
    80.             },  
    81.             {  
    82.                 "image": "glyphicon glyphicon-tag",  
    83.                 "name": "設備日志",  
    84.                 "url": "html/Log/hardwarelog.html"  
    85.             }  
    86.         ]  
    87.     },  
    88.     {  
    89.         "image":"glyphicon glyphicon-list",  
    90.         "name":"設備管理",  
    91.         "submenu":[  
    92.             {  
    93.             "image":"glyphicon glyphicon-list-alt",  
    94.             "name":"設備管理",  
    95.             "url":"html/mechanism/mechanism.html"  
    96.             }  
    97.         ]  
    98.     }  
    99. ]</span>  

    2、讀取json文件的service層實現

    [java] view plain copy
    1. <span style="font-size:16px;">package com.dskj.service.impl;  
    2.   
    3. import java.io.File;  
    4. import java.util.Scanner;  
    5. import org.springframework.beans.factory.annotation.Value;  
    6. import org.springframework.core.io.Resource;  
    7. import org.springframework.stereotype.Service;  
    8.   
    9. import com.dskj.common.util.StringUtil;  
    10. import com.dskj.service.ReadJsonService;  
    11.   
    12. @Service  
    13. public class ReadJsonServiceImpl implements ReadJsonService{  
    14.     <span style="color:#ff0000;">@Value(value="classpath:json/admin.json")</span>  
    15.     private Resource dataAdmin;      
    16.     <span style="color:#ff0000;">@Value(value="classpath:json/user.json")</span>  
    17.     private Resource dataUser;    
    18.       
    19.     public String getData(String fileName){       
    20.         if(StringUtil.isEmpty(fileName)){  
    21.             throw new NullPointerException();  
    22.         }  
    23.           
    24.         String jsonData = null;  
    25.           
    26.         try {  
    27.             File file = null;     if(fileName.equals("admin.json")){  
    28.                 file = dataAdmin.getFile();  
    29.             }else{  
    30.                 file = dataUser.getFile();  
    31.             }  
    32.               
    33.             jsonData = this.jsonRead(file);  
    34.               
    35.         } catch (Exception e) {  
    36.            e.printStackTrace();  
    37.         }    
    38.         return jsonData;         
    39.     }  
    40.     /** 
    41.      * 讀取文件類容為字符串 
    42.      * @param file 
    43.      * @return 
    44.      */  
    45.       private String jsonRead(File file){  
    46.             Scanner scanner = null;  
    47.             StringBuilder buffer = new StringBuilder();  
    48.             try {  
    49.                 scanner = new Scanner(file, "utf-8");  
    50.                 while (scanner.hasNextLine()) {  
    51.                     buffer.append(scanner.nextLine());  
    52.                 }  
    53.             } catch (Exception e) {  
    54.                   
    55.             } finally {  
    56.                 if (scanner != null) {  
    57.                     scanner.close();  
    58.                 }  
    59.             }  
    60.             return buffer.toString();  
    61.         }  
    62. }</span>  

    3、controller對應的代碼片段

    [java] view plain copy
    1. <span style="font-size:16px;">@RequestMapping("")  
    2.     public ModelAndView main() {  
    3.         ModelAndView model = null;  
    4.         String jsonFileName = null;  
    5.           
    6.         SysUser currentUser = (SysUser) ContextUtil.getSession().getAttribute("currentUser");  
    7.         if ("admin".equals(currentUser.getUsername())) {  
    8.             model = new ModelAndView("header1");  
    9.             jsonFileName = "<span style="color:#ff0000;">admin.json</span>";//根據文件名判斷讀取具體json文件  
    10.         } else {  
    11.             model = new ModelAndView("headerUser");  
    12.             jsonFileName = "<span style="color:#ff0000;">user.json</span>";</span>/<span style="font-size:16px;">/根據文件名判斷讀取具體json文件  
    13.   
    14.         }  
    15.           
    16.         String menue = <span style="color:#3333ff;">readJsonServiceImpl.getData</span>(jsonFileName);  
    17.           
    18.         model.addObject("menue", menue);  
    19.         return model;  
    20.   
    21.     }</span>  

    4、html頁面 將jsonarray轉換成js對象

    [javascript] view plain copy
    1. <span style="font-size:16px;">$(function() {  
    2.     var menue = JSON.parse('<span style="color:#ff0000;"><%=request.getAttribute("menue")%></span>');  
    3.     console.info(menue);  
    4.     createMenu(menue);//調用下邊的方法生成動態菜單</span>  

    5、對js對象遍歷 $.append動態添加到對應頁面

    [javascript] view plain copy
    1. <span style="font-size:16px;">function createMenu(menue){  
    2.             /* 一級菜單 */  
    3.             $.each(menue,function(i,v){  
    4.                 var menu1 = '<li class="active"><a href="javaScript:;">';  
    5.                 /* menu1 += '<span class="glyphicon glyphicon-home"></span>'; */  
    6.                 menu1 += '<span class=' + '\'' + v.image + '\'' + '>' + '</span>';  
    7.                 menu1 += '<span style="margin-left: 10px;">' + v.name + '</span><span class="fa arrow"></span>';  
    8.                 menu1 += '</a>';  
    9.                 menu1 += '<ul class="nav nav-second-level nps collapse in">';  
    10.                   
    11.                  /* 二級菜單  */  
    12.                     $.each(v.submenu,function(j,vJ){                      
    13.                         var menu2 = '<li class="active">';  
    14.                         menu2 +=        '<a href="javaScript:;" class="">';  
    15.                         /* menu2 +=         '<span class="glyphicon glyphicon-cloud" style="margin-right: 10px;"></span>'; */  
    16.                         menu2 +=            '<span class=' + '\'' + vJ.image + '\'' + 'style=' + '\'' + 'margin-right: 10px;' + '\'' + '>' + '</span>';  
    17.                         menu2 +=             vJ.name + '<span class="fa arrow "></span>';  
    18.                         menu2 +=        '</a>';  
    19.                         menu2 +=                '<ul class="nav nav-third-level nps collapse in">';                             
    20.                               
    21.                         /* 三級菜單 */  
    22.                         if(vJ.submenu){  
    23.                             $.each(vJ.submenu,function(k,vk){  
    24.                                 var menu3 = '<li>';  
    25.                                 menu3 +=        '<a href="javascript:openUrl(\'' + vk.url + '\')">';  
    26.                                 /* menu3 +=             '<span style="margin-right: 10px;" class="glyphicon glyphicon-off">'; */  
    27.                                 menu3 +=            '<span stype=' + '\'' + 'margin-right: 10px;' + '\'' + 'class=' + '\'' + vk.image + '\'' + '';  
    28.                                 menu3 +=            '</span>'+vk.name;  
    29.                                 menu3 +=        '</a>';  
    30.                                 menu3 +=    '</li>';  
    31.                                   
    32.                                 menu2 += menu3;  
    33.                                       
    34.                             });  
    35.                         }else{  
    36.                             $.each(v.submenu,function(j,vJ){  
    37.                                 var menu4 = '<li>';  
    38.                                 menu4 +=        '<a href="javascript:openUrl(\'' + vJ.url + '\')">';  
    39.                                 /* menu3 +=             '<span style="margin-right: 10px;" class="glyphicon glyphicon-off">'; */  
    40.                                 menu4 +=            '<span stype=' + '\'' + 'margin-right: 10px;' + '\'' + 'class=' + '\'' + vJ.image + '\'' + '';  
    41.                                 menu4 +=            '</span>'+vJ.name;  
    42.                                 menu4 +=        '</a>';  
    43.                                 menu4 +=    '</li>';  
    44.                                       
    45.                                  menu2 = menu4;   
    46.                             });  
    47.                         }  
    48.                             menu1 += menu2;  
    49.                     });  
    50.                       
    51.                     $("#side-menu").append(menu1);  
    52.                 });  
    53.                   
    54.             }</span>  

    6、效果如下圖

    藍藍設計www.lzhte.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://www.lzhte.cn

    存檔

    主站蜘蛛池模板: 中文字幕无码精品亚洲35| 亚洲色无码中文字幕| 亚洲国产成人久久综合电影| 亚洲成A人V欧美综合天堂麻豆| 成人黄色网址| 国产一卡2卡三卡4卡免费网站| 亚洲国产毛片aaaaa无费看| semimi亚洲综合在线观看| 国产免费福利一区二区| 久夜色精品国产噜噜| 国产永久免费高清在线观看| 91午夜福利在线观看精品| 欧美成人精品高清在线下载| 久99久热只有精品国产15| 国产91在线|中文| 中文人妻AV高清一区二区| 国产精品久久中文字幕| 少妇人妻偷人精品视蜜桃| 国产精品中文字幕一区| 国产无码swag专区| 微胖少妇馒头BBXX| 欧美视频精品免费播放| 国产午夜精品福利视频| 欧美国产日韩a在线视频| 久青草青综合在线视频| 国产免费午夜福利在线播放11| 无码h黄肉3d动漫在线观看| 亚洲五月婷婷久久综合| 会泽县| 成熟了的熟妇毛茸茸| 印江| 日韩成人影片| 狼人大香伊蕉国产WWW亚洲| 91成人国产在线观看免费| 99精品99| 伊人依成久久人综合网| 日本高清一区二区不卡视频| 午夜精品久久久久久久四虎| 国产热女视频一区二区三区| 精品无码国产自产野外拍在线| 亚洲精品二区偷拍视频|