快速业务通道

基于java实现的多层目录结构 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
Node> { 2 3     private String type; 4     private Node root; // root准泣 5     private Map<Integer, T> nodeHolder = new HashMap<Integer, T>();// 准泣隔嗤匂 6 7     private NodeStore<T> nodeStore; 8 9     /** 10      * 繍峠中議node list更秀撹峯 11      * 12      * @throws TreeException 13      */ 14     public void build() throws TreeException { 15         List<T> nodes = nodeStore.findByType(type); 16         // 泌惚nodes葎腎,夸音恂販採侃尖 17         if (nodes == null || nodes.isEmpty()) { 18             return; 19         } 20         // 譜崔root才node隔嗤匂 21         for (T node : nodes) { 22             if (node.isRootNode()) { 23                 this.root = node; 24             } 25             nodeHolder.put(node.getId(), node); 26         } 27 28         // 泌惚root葎腎,夸build払移阻 29         if (root == null) { 30             throw new TreeException("no root node found."); 31         } 32 33         // 秀羨准泣岻念購狼 34         for (T node : nodes) { 35             if (node.isRootNode()) { 36                 continue; 37             } 38             Node parent = getNodeById(node.getParentId()); 39             if (parent == null) { 40                 throw new TreeException("no parent node found.current node id is:" + node.getId()); 41             } 42             parent.addChild(node); 43         } 44 45         // 電會 46         root.sortAllChidren(); 47     } 48 49     /** 50      * 誼欺root准泣 51      * 52      * @return 53      */ 54     public Node getRoot() { 55         return root; 56     } 57 58     /** 59      * 功象id誼欺斤哘准泣 60      * 61      * @param id 62      * @return 63      */ 64     public Node getNodeById(Integer id) { 65         return nodeHolder.get(id); 66     } 67 68     public void setType(String type) { 69         this.type = type; 70     } 71 72     public void setNodeStore(NodeStore nodeStore) { 73         this.nodeStore = nodeStore; 74     } 75 76 }

云猟塘耗坿鷹

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号