递归问题 本帖最后由 qq_20871509 于 2014-09-16 20:52:34 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String str;// level: 打印时用来缩进的,美化打印效果。孩子结点比父结点多一个----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 +="----"; } try { stmt=conn.createStatement(); String sql="select * from article where pid="+id; // SQL 查找父结点的pid为传进来的id rs=stmt.executeQuery(sql); // 执行SQL while(rs.next()) { // 输出查到的结果 str+="<tr><td>"+rs.getInt("id")+"</td><td>"+preStr+ rs.getString("title")+"</td></tr>"; if(rs.getInt("isleaf")!=0) // 如果查到的记录不是叶结点,即有孩子结点,继续查询 { tree(conn,rs.getInt("id"),level+1); // 当前记录的id作为pid,查找它的孩子结点 } } 看懂楼上的解释后,自己尝试改造下, 可以改为单句sql查出所有集合 能在详细说明下吗 这是我的数据库 前面到pid等于2的时候 id 3 和 id4 pid都是2 他下面怎么执行?先执行id3?还是同时? 然后 往下面到id等于5的时候 找不到pid等于5的 又怎么执行? 还有一开始传入的是id=1,level=1 jsp 验证码问题 急求需求 SSH开发中 严重:exception的问题 在JS里面下面的结果是什么? jsp中如何实现在线用户管理?? 绝好的B/s系统,大家来研究研究怎么做的,顺便接分 大家是如何处理一个页面有多个提交按钮的问题的? 请教win2000下配置运行jsp环境的问题 CSDN怎么没有CFML的论谈,这里有用写CFML的人吗? 菜鸟求大神:js中如何控制先后执行顺序 这是一个加密日记本的程序 谁帮我看看哪里错了 谢谢!!!! 求大神告知答案,jsp无法运行
// level: 打印时用来缩进的,美化打印效果。孩子结点比父结点多一个----
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 +="----";
}
try
{
stmt=conn.createStatement();
String sql="select * from article where pid="+id; // SQL 查找父结点的pid为传进来的id
rs=stmt.executeQuery(sql); // 执行SQL
while(rs.next())
{
// 输出查到的结果
str+="<tr><td>"+rs.getInt("id")+"</td><td>"+preStr+
rs.getString("title")+"</td></tr>";
if(rs.getInt("isleaf")!=0) // 如果查到的记录不是叶结点,即有孩子结点,继续查询
{
tree(conn,rs.getInt("id"),level+1); // 当前记录的id作为pid,查找它的孩子结点
}
}
前面到pid等于2的时候 id 3 和 id4 pid都是2 他下面怎么执行?先执行id3?还是同时? 然后 往下面到id等于5的时候 找不到pid等于5的 又怎么执行?