Patterns / Completely non-blocking, up to the DB / Utilize wire-protocol for non-blocking implementations / Divide Client API and Driver SPI / Shrink Driver SPI
API for: / Driver authors / Human users / Inhuman users like JPA, Jdbi, jOOQ, etc. / No-one likes using JDBC API / Many methods, most useless / Too low-level for human users / Too verbose for driver implementors
us_sales_by_districts") Flux<UsSalesDataDto> findAll(); @Query("select * from us_sales_by_districts, where code=:code") Mono<UsSalesDataDto> findById(@Param("code") String code); } Spring Data R2DBC
have reactive DB access, soon / Spring Data drives R2DBC / Not for production yet? But soon! / It is time to try R2DBC! / Reactive vs Fibers: friends or foes?