resultSet.next()方法本身就带了是否为空的判断,不需要先在while循环前再进行一次if判断是否有返回结果,直接使用while(resultSet.next())即可,因为每次.next()的时候,都会使游标下移一位,当先进行if(resultSet.next())时,游标已经指向第一条数据了,然后再while(resultSet.next()),此时游标已经指向第二条数据了,所以循环会少一次结果,就是在if判断那里丢失的
错误写法:if(!resultSet.next()){}
while(resultSet.next())
正确做法:while(resultSet.next())