我目前遇到了以下错误,
java.sql.SQLException: Method 'executeQuery(String)' not allowed on prepared statement.
因为我正在使用
PreparedStatement stmt = conn.prepareStatement(sql);
而且还有
ResultSet rs = stmt.executeQuery(sql);
在我的代码中。
现在我需要删除ResultSet行,但这会留下以下代码让我处理:
if (rs.next()) {
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("login.successful"));
request.getSession(true).setAttribute("USERNAME", rs.getString("USERNAME"));
request.getSession(true).setAttribute("BALANCE", rs.getString("BALANCE"));
request.setAttribute("msg", "Logged in successfully");
我不确定我完全理解了什么
if (rs.next())
能否有人向我解释一下这段代码?如果我能更好地理解它,我相信我会更好地处理使用PreparedStatement结果的逻辑。同时,对于修改该逻辑的任何帮助也将不胜感激。