PSQLException: ResultSet not positioned properly, perhaps you need to call next

前端 未结 3 1422
无人共我
无人共我 2020-12-10 08:14
public UserBean authenticate(String username,String password){
    PostGresDAO pg=new PostGresDAO();   //creates new connection
    Connection conn=pg.getConnecion()         


        
3条回答
  •  心在旅途
    2020-12-10 09:10

    The error is telling you exactly what's wrong - you're not calling next() on your ResultSet to get to the first row of the results.

    This line:

    if(rs!=null)
    

    is pointless as far as I know; I don't believe executeQuery will ever return null. If there's a problem in your query, an exception will be thrown. If there are no results, it will return an empty result set. To see if there's a row, you should call next() and check the return value:

    if (rs.next())
    

    Additionally:

    • Catching an exception and just printing the stack trace without rethrowing is almost always the wrong approach
    • Your code suggests that you're storing passwords in plain text. Please don't. Really, really don't.

提交回复
热议问题