有谁 做过 java根据数据库展开树.
展示页面jsp
有好的例子没有,谢谢!

解决方案 »

  1.   

    http://download.csdn.net/source/444826,lz可以下载这个树形结构,用sql语句将数据表里的内容放在相应的根节点和叶子节点上。
      

  2.   

    这是我前段时间做BBS的时候在网页中做的数据库树状结构展现的代码
    <%!//这个是数据库展示为树状结构的方法
    boolean login = false;//是否登陆了
    String str = "";
    String strLogin = "";
    private void tree(Connection conn,int id,int level){
    Statement stmt = null;
    ResultSet rs = null;
    String preStr = "";

    for(int i=0;i<level;i++){
    preStr = preStr + "----"; 
    }

    try{
    stmt = conn.createStatement();
    rs = stmt.executeQuery("select * from article where pid =" + id);
    while(rs.next()){
    if(login){//如果登录进来了,显示删除链接
    strLogin = "<a href='delete.jsp?id=" + rs.getInt("id") + "&pid=" + rs.getInt("pid") + "'>删除</a>";
    }
    str = str + "<tr><td>" + rs.getInt("id") + "</td><td>" + 
      preStr + "<a href='showArticleDetail.jsp?id="+ rs.getInt("id") +"'>" + 
      rs.getString("title") + "</a>" + 
      "</td><td>" +  strLogin +
      "</td></tr>";
    if(rs.getInt("isleaf") != 0){
    tree(conn,rs.getInt("id"),level+1);
    }
    }
    } catch(SQLException e){
    e.printStackTrace();
    } finally{
    try{
    if(stmt != null){
    stmt.close();
    stmt = null;
    }
    if(rs != null){
    rs.close();
    rs = null;
    }
    } catch(SQLException e){
    e.printStackTrace();
    }
    }
    }
    %><%//在网页中调用方法
    Class.forName("com.mysql.jdbc.Driver");
    String url = "jdbc:mysql://localhost/bbs?user=root&password=moon";
    Connection conn = DriverManager.getConnection(url);
    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery("select * from article where pid = 0");

    while(rs.next()){
    if(login){//如果登录进来了,显示删除链接
    strLogin = "<a href='delete.jsp?id=" + rs.getInt("id") + "&pid=" + rs.getInt("pid") + "'>删除</a>";
    }
    str = str + "<tr><td>" + rs.getInt("id") + "</td><td>" + 
          "<a href='showArticleDetail.jsp?id="+ rs.getInt("id") +"'>" + rs.getString("title") + "</a>" + 
          "</td><td>" + strLogin +
          "</td></tr>";
    if(rs.getInt("isleaf") != 0){
    tree(conn,rs.getInt("id"),1);
    }
    }

    rs.close();
    stmt.close();
    conn.close();
    %>