• <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

    存檔

    主站蜘蛛池模板: 久久亚洲精品中文字幕无码| 国产成人丝袜在线无码| 国产资源精品中文字幕| 亚洲AV无码不卡私人影院| 粗大的内捧猛烈进出小视频| 久久亚洲AV无码精品色午夜麻 | 国产91九色在线播放| 久久久久久中文字幕有精品| 偷窥国产亚洲免费视频| 天天爽天天爽天天片a| 国产黄片一区视频在线观看| 亚洲AV无码午夜嘿嘿嘿| 国产69精品久久久久91不卡| 国产成人1024精品免费| 国产精品自拍毛片一区| 欧美日韩亚洲tv不卡久久| 日韩精品欧美激情国产一区| 99久久er热在这里只有精品99| 国产在线拍揄自揄视频网站| 欧美深度肠交惨叫| 中文字幕亚洲乱码熟女一区二区| 女人ZOZOZO人禽| a在线亚洲男人的天堂试看| 美女个护士一级毛片亚洲| 夜夜躁日日躁狠狠久久AV| 精品国产线拍大陆久久尤物| 超碰福利导航| 欧美不卡无线在线一二三区观| 久久老子午夜精品无码| 国产成人精品一区二三区| 欧美日韩中文国产va另类| 国产在线自在拍91精品黑人| 国产麻豆freesexvideos中国| 亚洲精品国产高清一线久久| 国产午夜福利片1000无码| 久久ER热在这里只有精品66| 亚洲中文视频一区二区三区| 亚洲国产精品成人无码A片软件| 国产性生交xxxxx免费| 亚洲欧洲AV一区二区三区| 亚洲国产天堂在线观看|