想做一个展开的树!
我的servlet只能得到根目录,每次都需点击才能出下一级。求救怎么直接就是展开的树!!!!!!!!!
我的servlet
package com.bgonline.dzsw.util.tree;/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2007</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */import java.sql.ResultSet;import javax.servlet.ServletException;
import javax.servlet.http.*;import com.bgonline.common.DBProcessSQL;public class TreeviewServlet extends HttpServlet {
        /**
 * 
 */
private static final long serialVersionUID = -7497892726836542298L;
public void doPost(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, java.io.IOException {
                System.out.println("aaaaaaaaaaaaaaaaaaaa");
                String parentID = request.getParameter("parent");//获得id的值
                String pagemane = request.getParameter("pagename");//获得页面
                System.out.println(parentID);
                System.out.println(pagemane);
                DbManager dm = new DbManager();
                
                response.setContentType("text/html;charset=GBK");
         java.io.PrintWriter out = response.getWriter();
         String outputString = "";  
                
 
                
                
                
                if (parentID!=null&&!parentID.equals(""))//如果不为null和空
                {
                 Category category = new Category(parentID, dm);// 创建Category对象
         TreeviewElement[] top = category.getChildren(dm, false);// 得到该分类的所有下级分类
                        
                        for(int i= 0;i<top.length;i++)//循环显示每个分类
                         outputString = treeviewRender.renderTreeViewAjax(top[i], false,
             pagemane, dm);
             String subId = SecondTree(parentID);
             String[] sub= subId.split(",");
             for(int n=0; n<sub.length;n++){
             System.out.println(sub[0]);
             category = new Category(subId, dm);
             outputString = treeviewRender.renderTreeViewAjax(top[n], false,pagemane, dm);
             }
                }
                out.println(outputString);
                dm.close();
        }        public void doGet(HttpServletRequest request, HttpServletResponse response)
                        throws ServletException, java.io.IOException {                doPost(request, response);
        }
        String SecondTree(String parentID) {
     String aa = "";
     String nn = "";
     DBProcessSQL dbps = new DBProcessSQL("watchtax");
     ResultSet resultSet = null;
     String sql = "SELECT * FROM LTXXB where UpLevelID = '" + parentID + "'";
     String sqlparam[][] = new String[0][2];
     try {
     for (resultSet = dbps.query(sql, sqlparam, 0); resultSet.next();) {
     aa = resultSet.getString("pk");
     nn = aa+","+nn;
     String sub[] = nn.split(",");
     System.out.println("+++++++=="+sub[0]);
     }
    
     System.out.println("=================="+nn);
     return aa;
     } catch (Exception e) {
     e.printStackTrace();
     return aa;
     }
     }
}

解决方案 »

  1.   

    我这样写for(int n=0; n <sub.length;n++){ 
                System.out.println(sub[0]); 
    这个for循环只循环一次
      

  2.   

    那你检查下
    String subId = SecondTree(parentID); 
    String[] sub= subId.split(","); 
    这2个值是不是你想要的值。
      

  3.   

    我检查了!是我想要的值!
       for (resultSet = dbps.query(sql, sqlparam, 0); resultSet.next();) { 
        aa = resultSet.getString("pk"); 
        nn = aa+","+nn; 
        String sub[] = nn.split(","); 
        System.out.println("+++++++=="+sub[0]); 
        } 
    能得出我要的值