jscsqb(大漠沙如雪) 请进领分,令再加200份问大家类似的问题?
uiiu 2003-10-16 07:32:36 为感谢jscsqb在下面的题目中的帮助,在jscsqb加100分
http://expert.csdn.net/Expert/topic/2351/2351787.xml?temp=.6661035
另我加200分问大家类似的问题:
我的表名:abc (mysql数据库)
结构 id name father
数据 1 AAA 0
2 BBB 0
3 CCC 0
4 A1 1
5 A2 1
我的JSP代码:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>
<%@ page import="java.sql.*"%>
<jsp:useBean id="myLinkDb" scope="application" class="myjspdb.DB"/>
<%
ResultSet rs =null;
ResultSet rs1 =null;
int id;
String sql="select * from abc where father=0";
myLinkDb.createStmt();
try{
rs=myLinkDb.execute(sql);
while(rs.next()){
id=rs.getInt(1);
out.print(id+":");
out.print(rs.getString(2)+"<br>");
String sql1="select * from abc where father="+id;
rs1=myLinkDb.execute(sql1);
while(rs1.next()){
out.print(" "+rs1.getString(1)+":");
out.print(rs1.getString(2)+"<br>");
}
}
}catch(SQLException e){}
%>
我的Javabean代码:
package myjspdb;
import java.sql.*;
import java.io.*;
import java.util.*;
import org.w3c.dom.*;
public class DB {
Connection dbConn = null;
Statement stmt = null;
ResultSet rs = null;
public DB(){
String jdbcDriver = "com.mysql.jdbc.Driver";
String dbURL = "jdbc:mysql://localhost:3306/test?user=test&password=test&useUnicode=true&characterEncoding=gb2312";
try {
Class.forName(jdbcDriver).newInstance();
dbConn = DriverManager.getConnection(dbURL);
}
catch(Exception e) {
System.err.println("DB(): 报错 " + e);
}
}
public void createStmt(){
try{
stmt = dbConn.createStatement();
}
catch(Exception e) {
System.err.println("createStmt(): 报错" + e);
}
}
public ResultSet execute(String sql)throws SQLException{
if (stmt != null) {
this.rs=stmt.executeQuery(sql);
return this.rs;
} else
return null;
}
}
在我运行test.jsp后显示结果为:
1:AAA
4:A1
5:A2
可是我希望是得到:
1:AAA
4:A1
5:A2
2:BBB
3:CCC
请问怎么样才能得到我想要的结果?谢谢!(帮忙解决令开贴给200分)