T- the result type
@FunctionalInterface public interface RowMapper<T>
JdbcTemplatefor mapping rows of a
ResultSeton 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.
SQLExceptionswill 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.
@Nullable T mapRow(ResultSet rs, int rowNum) throws SQLException
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 row
SQLException- if a SQLException is encountered getting column values (that is, there's no need to catch SQLException)