为什么我一用就出现ResultSet已经关闭的错误?

supertoto supertoto 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在我自己的一个包里面我定义了数据库的连接和ResultSet的取值,但是一运行就报错说我的ResultSet已经关闭,请问为什么?
下面是我的jsp中使用到的几个语句:
<%
tree mytree =new tree(response);
mytree.test();
mytree.close();
%>

在我的java文件中是这样的:

package tree;

import java.sql.*;
import java.io.*;
import javax.servlet.http.HttpServletResponse;

public class tree
{
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:topics";
Connection conntemp = null;
ResultSet rs;
PrintWriter out = null;
ResultSet rsTest;

public tree(HttpServletResponse resp)
{
try
{
out=resp.getWriter();
}
catch (Exception e)
{
System.out.println("test():" + e.getMessage());
}
}


ResultSet executeQuery(String sql)
{
try
{

Class.forName(sDBDriver);
conntemp = DriverManager.getConnection(sConnStr);
Statement stmt = conntemp.createStatement();
//rs = stmt.getResultSet();
rs =stmt.executeQuery(sql);
stmt.close();
}
catch (Exception e)
{
System.out.println("aq.executeQuery: " + e.getMessage());
}
return rs;
}

public void close()
{
try {
conntemp.close();
rs.close();
//rsSubtopics.close();
//rsMainTopic.close();
//rsTest.close();
}
catch (Exception ex) {
System.out.println("ax0.exception: " + ex.getMessage());
}
}


public void test()
{
rsTest = executeQuery("Select * from topic");
try {
System.out.println (rsTest.getRow());
}
catch (Exception ex) {
System.out.println("Rs error: " + ex.getMessage());
}

}

}

...全文
评论 5
收藏 已收藏
分享
返回顶部
supertoto
Web 开发 81,108 成员 341,721 内容