再说递归...
===ShowTree.jsp=== <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ page import="java.sql.*" %> <% Class.forName("oracle.jdbc.driver.OracleDriver"); Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1522:orcl","scott","tiger"); Statement st=conn.createStatement(); ResultSet rs=st.executeQuery("select * from article where pid=0"); %> <%! static String preout=""; private static void getTree(Connection conn,int id,int level) { Statement st=null; ResultSet rs=null; String blk=""; String que="select * from article where pid="+id; for(int i=0;i<level;i++) { blk=blk+"---"; } try { st=conn.createStatement(); rs=st.executeQuery(que); while(rs.next()) { preout+="<tr><td>"+blk+rs.getInt("id")+"</td><td>"+"<a href='show article deatil.jsp?id="+rs.getInt("id")+"'>"+rs.getString("cont")+"</a>"+"</td></tr>"; if(rs.getInt("isLeaf")!=1) { getTree(conn,rs.getInt("id"),level+1); } } } catch(SQLException e) { e.printStackTrace(); } } %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <hr> <table border="1"> <% rs.next(); %> <tr><td><%=rs.getInt("id")%></td><td><%= rs.getString("cont")%></td></tr> <% getTree(conn,0,1); out.print(preout); %> </table>> </body> <% rs.close(); st.close(); conn.close(); %> </html>
递归算法...
1.找儿子
2.找父亲
只要有这两个ID, 理论上就可以将所有的article的关系遍历出来. 现实中的关系也是, 长辈/后辈, 构成了全部关系网.
显示链接内容.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ page import="java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <% String StrId=request.getParameter("id"); int id=Integer.parseInt(StrId); Class.forName("oracle.jdbc.driver.OracleDriver"); Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1522:orcl","scott","tiger"); Statement st=conn.createStatement(); ResultSet rs=st.executeQuery("select * from article where id="+id); %> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <% if(rs.next()) { %> <h1><font color="green"><%=rs.getString("title") %></font></h1> <hr> <h4><%=rs.getString("cont") %></h4> <% } %> </body> </html>
分类:
Web
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端