- All Superinterfaces:
Function<R,E>
- All Known Implementing Classes:
DefaultRecordMapper
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
RecordMapper is a mapper that can receive Record
objects, when fetching data from the database, transforming them into a
custom type <E>.
RecordMapper is used behind the scenes in methods like
ResultQuery.fetchInto(Class), Result.into(Class),
Record.into(Class) and other methods called into(Class),
where the argument class is a Class of type E.
The default RecordMapper behaviour in the context of a
Configuration can be overridden through that
configuration's Configuration.recordMapperProvider()
SPI. Custom record mappers can be constructed using lambda expressions, using
various Records.mapping(Function1),
Records.mapping(Function2), etc. utilities, and other ways.
A RecordMapper is never asked to map null record values,
which can be obtained using methods like
ResultQuery.fetchOne(RecordMapper), or by using RowN types as
nested records in scalar subqueries, mapping them e.g. via
Row2.mapping(Function2). Instead, null is produced
without passing by this SPI.
The inverse operation is modelled by RecordUnmapper.
- Author:
- Lukas Eder
-
Method Summary