java – ResultSet关闭后不允许操作
发布时间:2020-12-15 00:09:39 所属栏目:Java 来源:网络整理
导读:好吧,在过去的两天里,他一直试图解决这个问题. Statement statement = con.createStatement(); String query = "SELECT * FROM sell"; ResultSet rs = query(query); while (rs.next()){//--- I get there operation error here 这是查询方法. public static
好吧,在过去的两天里,他一直试图解决这个问题.
Statement statement = con.createStatement(); String query = "SELECT * FROM sell"; ResultSet rs = query(query); while (rs.next()){//<--- I get there operation error here 这是查询方法. public static ResultSet query(String s) throws SQLException { try { if (s.toLowerCase().startsWith("select")) { if(stm == null) { createConnection(); } ResultSet rs = stm.executeQuery(s); return rs; } else { if(stm == null) { createConnection(); } stm.executeUpdate(s); } return null; } catch (Exception e) { e.printStackTrace(); con = null; stm = null; } return null; } 我该如何解决这个错误? 解决方法
很难从你发布的代码中确定,但我怀疑ResultSet在while循环体内无意中被关闭(或stm被重用).这将在下一次迭代开始时触发异常.
此外,您需要确保应用程序中没有其他线程可能使用相同的DB连接或stm对象. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |