Вам нужно вызвать ResultSet#beforeFirst()
, чтобы переместить курсор назад до первой строки, прежде чем вы вернете объект ResultSet
. Таким образом, пользователь сможет использовать next()
обычным способом.
resultSet.last();
rows = resultSet.getRow();
resultSet.beforeFirst();
return resultSet;
Тем не менее, у вас большие проблемы с приведенным кодом. Это утечка ресурсов БД, и это также не правильный подход ООП. Найдите шаблон DAO. В конечном итоге вы бы хотели получить
public List<Operations> list() throws SQLException {
// Declare Connection, Statement, ResultSet, List<Operation>.
try {
// Use Connection, Statement, ResultSet.
while (resultSet.next()) {
// Add new Operation to list.
}
} finally {
// Close ResultSet, Statement, Connection.
}
return list;
}
Таким образом, вызывающий абонент должен просто использовать List#size()
, чтобы узнать о количестве записей.