動態產生tree使用PrimeFaces


畫面程式碼
<p:tree value="#{salesCtrl.deptRoot}" var="node" id="tree">
                            <p:treeNode id="treeNode">
                                <h:outputText value="#{node}" id="lblNode"/>
                            </p:treeNode>
                        </p:tree>

java程式碼

        private TreeNode deptRoot;
     
        deptRoot = new DefaultTreeNode("Root", null);---->對應畫面的VALUE值
        TreeNode node0 = new DefaultTreeNode("TEST", deptRoot);---->根節點
       
       //先找出第一層節點的資料
            TreeNode node1[][]= new TreeNode[2][];--->用2維陣列
            node1[0]=new TreeNode[results2.size()+1];--->宣告第一層的數量
            for (int i = 0; i < results2.size(); i++) {
               
                node1[0][i] = new DefaultTreeNode(results2.get(i).getDeptName().toString().trim(), node0);--->第一層節點資料

                sql = "select * from customer where deptCode='" + results2.get(i).getDeptCode().toString().trim() + "'";-->找出第2層節點資料
               
                List rs = (List) r.query(conn, sql, new MapListHandler());
                node1[1]= new TreeNode[rs.size()+1];-->宣告第2層節點數量
                for (int i3 = 0; i3 < rs.size(); i3++) {
                    Map map = (Map) rs.get(i3);
                   
                    node1[1][i3]=new DefaultTreeNode(map.get("custNameC").toString().trim(), node1[0][i]);-->第二層節點資料
                   
                }

留言

這個網誌中的熱門文章

java 數字轉字串 字串轉數字

MS sqlServer資料庫移轉至MySQL-->利用MySQL WorkBench

sql server 15023 error [SQL SERVER問題: 使用者、組或角色 '*****' 在當前資料庫中已存在]