try{
String query= "select user_name from user";
ResultSet rs = queries.performQuery(query);
while(rs.next()){
System.out.println("User Name :" + rs.getString("user_name"));
}
另一类
我有这样的事情:调用另一种方法获取结果集并正确关闭连接?
public ResultSet performQuery(String query) throws SQLException
{
try
{
connection = DriverManager.getConnection(sqlUrl,sqlUser,sqlPassword);
stmt = connection.createStatement();
rs = stmt.executeQuery(query);
}
catch(SQLException ex)
{
}
finally{
close(rs);
close(stmt);
close(connection);
}
return rs;
}
现在我得到的错误不允许操作的ResultSet关闭后,这是明显的,因为我关闭RS /语句/连接。
我没有我的代码,所以这只是我的头顶,忽略任何语法错误,我希望我的问题仍然清楚。
所以我的问题是这样的:
如果你想有一个例如执行查询的方法,并调用在另一种方法,然后做rs.next,什么是适当的方式来关闭ResultSet /语句/连接?对我来说关闭performQuery是有意义的,但是这给了我错误。
那么,你执行一个查询并关闭ResultSet,但实际上*检索结果行需要一个打开的ResultSet。因此,您唯一的选择是在执行查询后保持“ResultSet”处于打开状态,以便检索结果...之后,关闭它。创建1个方法可能会更好,这两个方法都会执行查询并检索结果(如果这就是您之后的结果)。 – Torious 2012-04-15 18:54:41