private StringBuffer TreeStr;
private void makeTree(int parent) throws Exception {
try{
String SQL = "select * from table where parent= " + parent;
ResultSet rs = DB.executeQuery(SQL);
if (rs.next()){
TreeStr.append("<table border=1 width=100%>");
do{
TreeStr.append("<tr>");
TreeStr.append("<td width=0>-></td>");
TreeStr.append("<td>");
makeTree(rs.getInt("id"),i+1);
TreeStr.append("</td></tr>");
}while (rs.next());
TreeStr.append("</table>");
rs.close();
rs = null;
}
}
catch(SQLException e){System.out.println(e.getMessage());}
}

解决方案 »

  1.   

    有错误看这个:
    private StringBuffer TreeStr;
    private void makeTree(int parent) throws Exception {
    try{
    String SQL = "select * from table where parent= " + parent;
    ResultSet rs = DB.executeQuery(SQL);
    if (rs.next()){
    TreeStr.append("<table border=1 width=100%>");
    do{
    TreeStr.append("<tr>");
    TreeStr.append("<td>-></td>");
    TreeStr.append("<td>");
    makeTree(rs.getInt("id"));
    TreeStr.append("</td></tr>");
    }while (rs.next());
    TreeStr.append("</table>");
    rs.close();
    rs = null;
    }
    }
    catch(SQLException e){System.out.println(e.getMessage());}
    }
      

  2.   

    回复人: CQ_LW(惊云) ( ) 信誉:100  2005-03-15 17:21:00  得分: 0  
     
     
       小弟愚笨,没看懂,
    页面应该是
    1000 
        100001
          10000101
        100002
    1001
    在请教,谢谢
      
     
    ------------------
    这个程序得到的就是这个效果
      

  3.   

    我也是初学者,大家一起研究import java.sql.*;
    import db.DbTrans; //数据库操作
    public class Tree {
        private DbTrans DB;
        public StringBuffer TreeStr = new StringBuffer();
        public Tree() {
    this.DB = new DbTrans();
        }
        public StringBuffer getTree() throws Exception {
    makeTree(0);
    return TreeStr;
        }    private void makeTree(int parent_id) throws Exception {
    try{
    String SQL = "select * from table where studentid= " + parent;
    ResultSet rs = DB.executeQuery(SQL);
    if (rs.next()){
    TreeStr.append("<table border=1 width=100%>");
    do{
    TreeStr.append("<tr>");
    TreeStr.append("<td>-></td>");
    TreeStr.append("<td>");
    if (rs.getInt("endflag")) == 1)//有下级分类
                              makeTree(rs.getInt("id"),i+1);
    TreeStr.append("</td></tr>");
    }while (rs.next());
    TreeStr.append("</table>");
    rs.close();
    rs = null;
    }
    }
    catch(SQLException e){System.out.println(e.getMessage());}
        }
    }
      

  4.   

    看这个:
    我也是初学者,大家一起研究import java.sql.*;
    import db.DbTrans; //数据库操作
    public class Tree {
        private DbTrans DB;
        public StringBuffer TreeStr = new StringBuffer();
        public Tree() {
    this.DB = new DbTrans();
        }
        public StringBuffer getTree() throws Exception {
    makeTree(0);
    return TreeStr;
        }    private void makeTree(int parent_id) throws Exception {
    try{
    String SQL = "select * from table where studentid= " + parent;
    ResultSet rs = DB.executeQuery(SQL);
    if (rs.next()){
    TreeStr.append("<table border=1 width=100%>");
    do{
    TreeStr.append("<tr>");
    TreeStr.append("<td>-></td>");
    TreeStr.append("<td>");
                                         TreeStr.append(rs.getString("studentname);
    if (rs.getInt("endflag")) == 1)//有下级分类
                              makeTree(rs.getInt("studentid"));
    TreeStr.append("</td></tr>");
    }while (rs.next());
    TreeStr.append("</table>");
    rs.close();
    rs = null;
    }
    }
    catch(SQLException e){System.out.println(e.getMessage());}
        }
    }
      

  5.   

    makeTree函数没有返回值,能在jsp中显示吗?
      

  6.   

    http://www.chinabs.net/php/default.asp?infoid=358
      

  7.   

    回复人: CQ_LW(惊云) ( ) 信誉:100  2005-03-15 17:59:00  得分: 0  
     
     
       makeTree函数没有返回值,能在jsp中显示吗?  
     
    =----------------------
    调用getTree()