import java.sql.*;

public class AticleTree {

 /**
  * @param args
  */
 public static void main(String[] args) {
  
  new AticleTree().show();
 }
   
 public void show() {
  
  Connection conn  = null;
  Statement stmt = null;
  ResultSet rs = null;
  try {
      Class.forName("com.mysql.jdbc.Driver");
      conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1/bbs?user=root&password=root");
      stmt = conn.createStatement();
      rs =stmt.executeQuery("select * from artice where pid = 0");
      while(rs.next()){

       system.out.println(rs.getString("cont");
       tree(conn,rs.getInt("id"),1);
      }
  } catch(ClassNotFoundException e){
   e.printStackTrace();
  }catch(SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    if(rs!=null) {
     rs.close();
     rs = null;
    }
    if(stmt!= null){
     stmt.close();
     stmt = null;
    }
    if(conn!= null) {
     conn.close();
     conn = null;
    }
   } catch(SQLException e) {
    e.printStackTrace();
   }
  }
 }
 
 private void  tree(Connection conn , int id , int level) {
  Statement stmt = null;
  ResultSet rs =  null;
  StringBuffer strf = new StringBuffer("");
  for(int i=0; i<level; i++) {
   strf.append("    ");
  }
  try {
   stmt = conn.createStatement();
   String sql = " select * from artice where pid =" +id;
   rs = stmt.executeQuery(sql);
   while(rs.next()) {
    System.out.println(strf+rs.getString("id")+rs.getString("cont"));
    if(rs.getInt("isleaf")!=0) {
     tree(conn,rs.getInt("id"),level+1);
    }
   }
   
  } catch(SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    if(rs!=null) {
     rs.close();
     rs = null;
    }
    if(stmt!= null){
     stmt.close();
     stmt = null;
    }
   } catch(SQLException e) {
    e.printStackTrace();
   }
  }
  
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值