ConnectionProviderMigrationManager, MigrationBasepublic interface DbAccessor extends ConnectionProvider
| Modifier and Type | Method | Description |
|---|---|---|
default <K,V> void |
dbEnrich(java.util.Map<K,V> map,
Extractor<K> keyExtractor,
Enricher<V> enricher,
SqlStatement sqlStatement) |
Given a map of entities, and a query that extracts details about them, then execute that query
and enrich the entities with the results.
|
default boolean |
dbExecute(SqlStatement sqlStatement) |
Execute a SQL statement.
|
default <T> java.util.Optional<T> |
dbFind(Extractor<T> extractor,
SqlStatement sqlStatement) |
Extract the result from a SQL query which returns at most one result.
|
default <T> java.util.stream.Stream<T> |
dbInsertGetGeneratedKeys(SqlStatement sqlStatement,
java.lang.String[] keyColumns,
Extractor<T> longExtractor) |
Execute an insert into a table with an auto incremented key, returning a stream of the keys.
|
default <T> java.util.stream.Stream<T> |
dbQuery(Extractor<T> extractor,
SqlStatement sqlStatement) |
Extract results from a SQL query designed to return multiple results.
|
default int |
dbUpdate(SqlStatement sqlStatement) |
Execute a SQL update or delete.
|
default <T> java.util.stream.Stream<T> |
stream(Extractor<T> extractor,
java.sql.ResultSet resultSet) |
Given an Extractor and ResultSet return a Stream of results.
|
getConnectiondefault <T> java.util.stream.Stream<T> dbQuery(Extractor<T> extractor, SqlStatement sqlStatement) throws java.sql.SQLException
T - Type extracted and returned in the streamextractor - The extractor to process the ResultSet withsqlStatement - The SQL statementjava.sql.SQLException - if the query or an extraction failsdefault <K,V> void dbEnrich(java.util.Map<K,V> map,
Extractor<K> keyExtractor,
Enricher<V> enricher,
SqlStatement sqlStatement)
throws java.sql.SQLException
K - the key typeV - the entity typemap - A map of entities the enrichkeyExtractor - an Extractor to get the entity key from the detail recordsenricher - a function to enrich an entity from the detail recordsqlStatement - The SQL statementjava.sql.SQLException - may result from the query or enrichmentsdefault <T> java.util.stream.Stream<T> stream(Extractor<T> extractor, java.sql.ResultSet resultSet)
T - the type parameterextractor - the extractorresultSet - the result setdefault <T> java.util.Optional<T> dbFind(Extractor<T> extractor, SqlStatement sqlStatement) throws java.sql.SQLException
T - Type extracted and optionally returnedextractor - the extractor to extract teh resultsqlStatement - the SQL statementjava.sql.SQLException - if the query or extraction fails, or if multiple rows returneddefault int dbUpdate(SqlStatement sqlStatement) throws java.sql.SQLException
sqlStatement - The SQL statementjava.sql.SQLException - if the update failsdefault <T> java.util.stream.Stream<T> dbInsertGetGeneratedKeys(SqlStatement sqlStatement, java.lang.String[] keyColumns, Extractor<T> longExtractor) throws java.sql.SQLException
sqlStatement - The SQL statementjava.sql.SQLException - if the insert faileddefault boolean dbExecute(SqlStatement sqlStatement) throws java.sql.SQLException
sqlStatement - The SQL statementtrue if the first result is a ResultSet
object; false if it is an update count or there are
no resultsjava.sql.SQLException - if the SQL is invalid