溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何實(shí)現(xiàn)JSP論壇樹(shù)型結(jié)構(gòu)的具體算法

發(fā)布時(shí)間:2021-11-22 11:18:50 來(lái)源:億速云 閱讀:126 作者:小新 欄目:編程語(yǔ)言

小編給大家分享一下如何實(shí)現(xiàn)JSP論壇樹(shù)型結(jié)構(gòu)的具體算法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

1、JSP論壇之演示表的結(jié)構(gòu):

 表名:mybbslist   字段 數(shù)據(jù)類(lèi)型說(shuō)明   BBSID自動(dòng)編號(hào)     RootID  Int 根帖ID,本身為根帖則RootID = ID   FID Int 父帖ID,上一層帖子的ID,如是根帖則FID = 0  DEPTHInt 根帖Level=0,其他依據(jù)回復(fù)的深度遞增   BBSSubject  Char主題

2、JSP論壇之創(chuàng)建表:

create table mybbslist (   forumID int(20) not null,   bbsID int auto_increment primary key,   rootid int(20) not null,   fid int(20) not null,   depth int(20) not null,   userID int(20) not null,   bbsUser varchar(24) not null,   bbsSubject varchar(100) not null,   bbsContent text,   bbsTime varchar(30),   bbsRead int(20),   bbsReply int(20),  INDEX forumID (forumID))

3、JSP論壇之實(shí)現(xiàn)連接MYSQL數(shù)據(jù)庫(kù)的BEAN

package netzero;  import java.sql.*;  public class mydb  {  String driverName = "org.gjt.mm.mysql.Driver";  Connection conn = null;  Statement stmt = null;  ResultSet rs = null;  String connURL= "jdbc:mysql://localhost/mybbs?user=root&password=how&useUnicode=true&characterEncode=8859_1";  //String connURL= "jdbc:mysql://localhost/netzerobbs?user=root&password=how";  public mydb()  {  try  {  Class.forName(driverName);  }  catch (java.lang.ClassNotFoundException e)  {  System.err.println("netzero(String): " + e.getMessage());  }  }   public ResultSet executeQuery(String sql) throws SQLException  {  conn = DriverManager.getConnection(connURL);  stmt = conn.createStatement();  rs = stmt.executeQuery(sql);  return rs;  }   public boolean closeConn()  {  try  {  if (rs!=null) rs.close();  if (stmt!=null) stmt.close();  if (conn!=null) conn.close();  return true;  }  catch ( SQLException ex )  {  System.err.println("closeConn: " + ex.getMessage());  return false;  }  }   }

4、JSP論壇的之顯示論壇的JavaScript/" target="_blank">JSP程序

﹤jsp:useBean id="mybbs" scope="session" class="netzero.mydb" /﹥  ﹤%@ page contentType="text/html;charset=gb2312" %﹥  ﹤%@ page import="java.io.*" %﹥  ﹤%@ page import="java.sql.*" %﹥  ﹤%  int intRowCount;  out.print("顯示論壇樹(shù)形結(jié)構(gòu)");  out.print("﹤br﹥﹤br﹥");  try {  String sql="select * from mybbslist order by rootid desc,depth,fid,bbsid";  ResultSet rs = mybbs.executeQuery(sql);  if (rs.next())  {  rs.last();  intRowCount=rs.getRow();  out.print("論壇樹(shù)中有");  out.print(intRowCount);  out.print("個(gè)葉子節(jié)點(diǎn)");  rs.first();  int j=0;  int Depth = 0;  out.print("﹤ul﹥");  while(j﹤intRowCount)  {  int rsrsDepth=rs.getInt("Depth");  if (rsDepth﹤Depth)  {  for(int i=1;i﹤Depth+1;ii=i+1)  {  out.print("﹤/ul﹥");  }  }  rsrsDepth=rs.getInt("Depth");  if (rsDepth﹥Depth)  {  out.print("﹤ul﹥");  }  out.print("﹤li﹥");   String bbssubject=rs.getString("bbssubject");  out.print(bbssubject);  out.print("﹤/li﹥");  Depth = rs.getInt("Depth");  jj=j+1;  rs.next();  }  out.print("﹤/ul﹥");  }  else  {  out.print("數(shù)據(jù)庫(kù)中無(wú)記錄");  }  }catch (SQLException E) {  out.println("SQLException: " + E.getMessage());  out.println("SQLState: " + E.getSQLState());  out.println("VendorError: " + E.getErrorCode());  }  %﹥  ﹤% //關(guān)閉mysql連接  try {  if(!mybbs.closeConn());  } catch (Exception ex) {  System.err.println("closeConn: " + ex.getMessage());  }  %﹥

以上是“如何實(shí)現(xiàn)JSP論壇樹(shù)型結(jié)構(gòu)的具體算法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

jsp
AI