如何在jdbc中使用嵌套结果集

时间:2015-03-30 17:14:53

标签: java html mysql jsp jdbc

我想以下列格式从数据库中检索类别及其关联的子类别,如图像....![KIDS菜单,其中商店,帮助,mycompany,帐户,流行的类别和标签都是子类别] [1]

我写了以下代码

<li class="active grid"><a class="color3" href="#">KIDS</a>
<div class="megapanel">
<div class="row">
<div class="col1">
<div class="h_nav">
<%
try 
{
String sql = "SELECT * FROM category WHERE Cat_Label='KIDS'";   
ResultSet rs = st.executeQuery(sql);
while (rs.next()) 
{
int catid;
String catname;
catid=rs.getInt(1);
  catname=rs.getString(3);
%>
<h4><%=catname%></h4>
<%
String sql1 = "SELECT * FROM subcategory WHERE Cat_Id='"+catid+"'"; 
ResultSet rs1 = st.executeQuery(sql1);
while (rs1.next()) 
{
String subcatnm;
subcatnm=rs1.getString(3);
%>
<ul>
<li><a href=""><%=subcatnm%></a></li>
</ul>                                       
<%}
rs1.close();
}
rs.close();
st.close();
con.close();
}
catch (SQLException e) 
{}
catch (Exception e) 
{}
%>
</div>                          
</div>
<div class="col1">
<div class="h_nav">
<img src="images/kids.jpg" alt=""/>
</div>
</div>
</div>
</div>
</li>   

此代码仅检索第一个类别及其关联的子类别...... 第一个结果集关闭..当控件转到第二个结果集

现在告诉我应该怎样做才能获得所有类别及其相关的子类别

我可以通过使用子查询或其他任何方式

来实现此目的 plzz建议我回答 谢谢。

1 个答案:

答案 0 :(得分:0)

如果您先收集数据,这将非常有用 - 一个地图&gt;并呈现您的HTML。混合逻辑和显示将最终让您感到困惑。

将rs.close()语句移到外部while循环之外。