T
- the result type@FunctionalInterface public interface RowMapper<T>
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.
JdbcTemplate
,
RowCallbackHandler
,
ResultSetExtractor
,
MappingSqlQuery
Modifier and Type | Method and Description |
---|---|
T |
mapRow(ResultSet rs,
int rowNum)
Implementations must implement this method to map each row of data in the
ResultSet . |
@Nullable T mapRow(ResultSet rs, int rowNum) throws SQLException
ResultSet
. This method should not call next()
on the
ResultSet
; it is only supposed to map values of the current row.rs
- the ResultSet
to map (pre-initialized for the current row)rowNum
- the number of the current rownull
)SQLException
- if an SQLException is encountered while getting
column values (that is, there's no need to catch SQLException)