title: why I could use first() method when my resultset type is forward only?
body: <p>I'm using the default <code>ResultSet</code> when I do a JDBC call. I'm surprised that after using <code>next()</code> to iterate the <code>ResultSet</code>, I could call <code>first()</code> to back to the first row. This is not meant by using forward only <code>ResultSet</code>?</p>
  
  <p>My code is quite simple:</p>
  
  <pre><code>  Statement st = conn.createStatement();
    rs = st.executeQuery(sql);
  
  while (rs.next()) {
      for (int i = 1; i &lt;= columnsNumber; i++) {
          if (i &gt; 1) System.out.print(",  ");
          String columnValue = rs.getString(i);
          System.out.print(rsmd.getColumnName(i) + " : " + columnValue);
      }
      System.out.println("");
  }
  rs.first();
  </code></pre>
  
  <p>I am using 8.0.11 version of mysql connector</p>
  
  <pre><code>&lt;dependency&gt;
      &lt;groupId&gt;mysql&lt;/groupId&gt;
      &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt;
      &lt;version&gt;8.0.11&lt;/version&gt;
  &lt;/dependency&gt;
  </code></pre>