title: Pagination with Apache iBatis SqlMaps queryForList
body: <p>This <a href="http://www.mhaller.de/archives/86-Pagination-with-Apache-iBatis-SqlMaps.html" rel="nofollow">nice article about pagination with Apache iBatis SqlMaps</a> states that iBatis does physical pagination using database cursor if available using ResultSet.absolute(position) if we call the queryForList API as in the example:</p>
  
  <pre><code>final List&lt;product&gt; queryForList = sqlMapClient.queryForList("SELECT",  
            parameter, paginationContext.getSkipResults(),  
            paginationContext.getMaxResults());  
  </code></pre>
  
  <p>In the case in which the DataSource consists of an Oracle 11g connected via jdbc (ojdbc6.jar) what exactly does that mean? </p>
  
  <p>Does iBatis change somehow the query statement sent to Oracle to handle the paging? Can I be sure that only the records for data pages required are transferred from the database to the application? how it works behind the scenes?</p>