All Known Implementing Classes:
BeanPropertyRowMapper
,
ColumnMapRowMapper
,
DataClassRowMapper
,
MappingSqlQueryWithParameters.RowMapperImpl
,
SingleColumnRowMapper
,
UpdatableSqlQuery.RowMapperImpl
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
An interface used by
JdbcTemplate
for mapping rows of a
ResultSet
on a per-row basis. Implementations of this
interface perform the actual work of mapping each row to a result object
but don't need to worry about exception handling.
SQLExceptions
will be caught and handled
by the calling
JdbcTemplate
.
Typically used either for
JdbcTemplate
's query methods or for
out
parameters of stored procedures.
RowMapper
objects are
typically stateless and thus reusable; they are an ideal choice for
implementing row-mapping logic in a single place.
Alternatively, consider subclassing
MappingSqlQuery
from the
jdbc.object
package: instead of working with separate
JdbcTemplate
and
RowMapper
objects, you can build executable
query objects (containing row-mapping logic) in that style.
Author:
Thomas Risberg, Juergen Hoeller
See Also:
JdbcTemplate
RowCallbackHandler
ResultSetExtractor
MappingSqlQuery
int rowNum)
throws
SQLException
Implementations must implement this method to map each row of data in the
ResultSet
. This method should not call
next()
on the
ResultSet
; it is only supposed to map values of the current row.
Parameters:
rs
- the
ResultSet
to map (pre-initialized for the current row)
rowNum
- the number of the current row
Returns:
the result object for the current row (may be
null
)
Throws:
SQLException
- if an SQLException is encountered while getting
column values (that is, there's no need to catch SQLException)