public Vector getRamNewsList(String strClassID, int intNum) throws Exception {
Vector v = new Vector();
String strSql = "Select ModuleNO,Name from UsecondMenu Where ModuleNO like '" +
strClassID + "%' order by dbms_random.value";
Connection conn = DBConnection.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(strSql);
int curNum = 0;
while (curNum < intNum && rs.next()) {
HtmlInfo news = new HtmlInfo();
news.setClassID(rs.getString("ModuleNO"));
news.setClassName(rs.getString("Name"));
ResultSet RsImg=null;
if(rs.getString("ModuleNO")!="")
{
RsImg = stmt.executeQuery("Select IndexImg From uNews Where ClassID='" + rs.getString("ModuleNO") + "' And isSubmit=1 And IndexImg is not null Order By Ord ASC,ID DESC");
if (RsImg.next()) {
news.setIndexImg(RsImg.getString("IndexImg"));
}
RsImg.close();
}
v.add(news);
curNum++;
}
rs.close();
rs=null;
stmt.close();
conn.close();
return v;
}大侠帮忙看看,程序只循环了一次,也就是说执行到 RsImg.close();就不执行了。
Vector v = new Vector();
String strSql = "Select ModuleNO,Name from UsecondMenu Where ModuleNO like '" +
strClassID + "%' order by dbms_random.value";
Connection conn = DBConnection.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(strSql);
int curNum = 0;
while (curNum < intNum && rs.next()) {
HtmlInfo news = new HtmlInfo();
news.setClassID(rs.getString("ModuleNO"));
news.setClassName(rs.getString("Name"));
ResultSet RsImg=null;
if(rs.getString("ModuleNO")!="")
{
RsImg = stmt.executeQuery("Select IndexImg From uNews Where ClassID='" + rs.getString("ModuleNO") + "' And isSubmit=1 And IndexImg is not null Order By Ord ASC,ID DESC");
if (RsImg.next()) {
news.setIndexImg(RsImg.getString("IndexImg"));
}
RsImg.close();
}
v.add(news);
curNum++;
}
rs.close();
rs=null;
stmt.close();
conn.close();
return v;
}大侠帮忙看看,程序只循环了一次,也就是说执行到 RsImg.close();就不执行了。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货