频道栏目
首页 > 程序开发 > 软件开发 > Java > 正文
新手入门:树形结构的实现
2006-09-21 14:25:35           
收藏   我要投稿

本例采用Access做为实例,所有还有很多要改进的地方。


请读者自已改进



package product;


import java.sql.*;


public class ConnectDB{


String strDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";


String strConnstr="jdbc:odbc:product";


Connection conn=null;


ResultSet rs=null;


Statement stmt=null;


// Statement stmt=null;


//构造函数


public ConnectDB(){


try{


Class.forName(strDBDriver); conn=DriverManager.getConnection(strConnstr);


stmt=conn.createStatement();


}


catch(Exception e){


System.out.println(e);


}


}



public ResultSet execute(String sql){


rs=null;


try{



rs=stmt.executeQuery(sql);


}


catch(SQLException e){


System.out.println(e.getMessage());


}


return rs;


}



public Connection getConnection(){


return conn;


}



public boolean close(){


try{


if(this.rs!=null){


this.rs.close();


}


if(stmt!=null){


this.stmt.close();


}


if(conn!=null){


this.conn.close();


}


return true;


}catch(Exception err){


return false;


}


}



}


//=======================================


package product;


import java.sql.*;


public class catalog


{


ConnectDB conn=new ConnectDB();


String str=null;


String sql=null;


ResultSet rs=null;


String AncestorID,LinkStr;



public String getCatalog(){



str="";


rs.close();


}


catch(SQLException e){


System.out.println(e.getMessage());


}


return str;


}


public void setCatalog(String CatalogName,String FatherID){


int ChildNum=0;


if(FatherID.compareTo("-1")!=0){


sql="select AncestorID,ChildNum,linkstr from catalog where productid="+FatherID;


//out.println(sql);


try{


rs=conn.execute(sql);


if(rs.next()){


AncestorID=rs.getString("AncestorID");


ChildNum=rs.getInt("ChildNum");


LinkStr=rs.getString("linkstr");


}


else{


AncestorID="";


LinkStr="1";


ChildNum=0;


}


LinkStr=LinkStr+(ChildNum+1);


//out.println(AncestorID+":"+LinkStr+":"+ChildNum);


sql="insert into catalog(title,fatherID,AncestorID,LinkStr) values(""+CatalogName+"",""+FatherID+"",""+AncestorID+"",""+LinkStr+"")";


//out.println(sql);


conn.execute(sql);


sql="update catalog set childNum="+(ChildNum+1)+" where productID="+FatherID;


//out.println("
"+sql);


conn.execute(sql);


}catch(Exception e){


System.out.println(e);


}



}else{


sql="insert into catalog(title,fatherID,LinkStr) values(""+CatalogName+"",""+FatherID+"","1")";


//out.println(sql);


try{


conn.execute(sql);


sql="select top 1 productID from catalog order by productID desc ";


rs=conn.execute(sql);


if(rs.next()){


AncestorID=rs.getString("productID");


}


else{


AncestorID="";


}


rs.close();


sql="update catalog set AncestorID=""+AncestorID+"" where productID="+AncestorID;


//out.println(sql);


conn.execute(sql);


}catch(Exception e){


System.out.println(e);



}



}//end if



if(rs!=null){


try{


rs.close();


}catch(Exception e){


System.out.println(e);


}


}



}



public void

点击复制链接 与好友分享!回本站首页
上一篇:java-Vector类在Java编程中的应用
下一篇:Hibernate面临专利诉讼,或遭遇禁止令!
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站