This project is no longer being actively maintained.
This project is an exploration of what a Java API for relational database access with Reactive Streams might look like. It uses Project Reactor. It uses Jdbi as an inspiration.
A quick example of configuration and execution would look like:
PostgresqlConnectionConfiguration configuration = PostgresqlConnectionConfiguration.builder()
.host("<host>")
.database("<database>")
.username("<username>")
.password("<password>")
.build();
R2dbc r2dbc = new R2dbc(new PostgresqlConnectionFactory(configuration));
r2dbc.inTransaction(handle ->
handle.execute("INSERT INTO test VALUES ($1)", 100))
.thenMany(r2dbc.inTransaction(handle ->
handle.select("SELECT value FROM test")
.mapResult(result -> result.map((row, rowMetadata) -> row.get("value", Integer.class)))))
.subscribe(System.out::println);
Both milestone and snapshot artifacts (library, source, and javadoc) can be found in Maven repositories.
<dependency>
<groupId>io.r2dbc</groupId>
<artifactId>r2dbc-client</artifactId>
<version>0.8.0.RC1</version>
</dependency>
Artifacts can bound found at the following repositories.
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
This project is released under version 2.0 of the Apache License.