Core concepts
There are a couple of core concepts that the API is built upon:
-
Asynchronous processing
Every operation that involves I/O with the database is asynchronous. Methods return
Future
or Reactive Stream'sPublisher
instances. -
Thread safety
rdbc API requires that its implementations must be thread-safe. You are free to share class instances among threads, even those that are mutable.
-
Null safety
SQL
NULL
values are represented asOption
instances. Scalanull
doesn't have to be used when working with the API.