繁体   English   中英

从数据库填充JTree

[英]Populating JTree from database

我有一个包含字段category_id,category_name和parent_category_id的表。 parent_category_id具有category_id中的值,表示父子关系。 我没有任何固定级别的层次结构,它可能达到5级或10级并且没有限制。我需要一个代码来实现这个JTree以使事情对我有用。 我也应该能够为菜单栏实现相同的功能..请帮我这个..

谷歌搜索后我发现了这个,

Map<String, Node> idToNode = new HashMap<String, Node>();   

//create nodes from ResultSet   
while ( resultSet.next() ){       
    Node node = //create node -contains info, parent id, and its own id from ResultSet
    //put node into idToNode, keyed with its id   
}   

//link together   
Iterator<String> it = idToNode.keySet().iterator();   
Node root = null;   
while ( it.hasNext() ){          
    Node node = idToNode.get(it.next());       
    Node parent = idToNode.get(node.getParentId());   
    if ( parent == null ) {  
        root = node;  
    }else{  
       parent.addChild(node);  
    }  
}

我如何编写这些注释说明?

使用DefaultMutableTreeNode创建节点

为节点创建ID映射 ​​- 当您从数据库中获取节点时,将它们存储在地图中,并将id作为其键。

获得所有节点后,再次浏览它们并匹配其父ID,从地图中检索它们。

假设您的树在数据库中结构合理,那么它将在这里发出声音。 选择任何节点并按照根链的父链。

使用根对象,您可以创建JTree。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM