You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
spring-boot/spring-boot-project
Stephane Nicoll 5c174feb65 Add auto-configuration for R2DBC's ConnectionFactory
This commit adds auto-configuration for R2DBC. If R2DBC is on the
classpath, a `ConnectionFactory` is created similarly to the algorithm
used to create a `DataSource`.

If an url is specified, it is used to determine the R2DBC driver and
database location. If not, an embedded database is started (with only
support of H2 via r2dbc-h2). If none of those succeed, an exception is
thrown that is handled by a dedicated FailureAnalyzer.

To clearly separate reactive from imperative access, a `DataSource` is
not auto-configured if a `ConnectionFactory` is present. This makes sure
that any auto-configuration that relies on the presence of a
`DataSource` backs off.

There is no dedicated database initialization at the moment but it is
possible to configure flyway or liquibase to create a local `DataSource`
for the duration of the migration. Alternatively, if Spring Data R2DBC
is on the classpath, a `ResourceDatabasePopulator` bean can be defined
with the scripts to execute on startup.

See gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
5 years ago
..
spring-boot Merge branch '2.2.x' 5 years ago
spring-boot-actuator Merge branch '2.2.x' 5 years ago
spring-boot-actuator-autoconfigure Revert "Add actuator specific ObjectMapper" 5 years ago
spring-boot-autoconfigure Add auto-configuration for R2DBC's ConnectionFactory 5 years ago
spring-boot-cli Explicitly set java home in CommandLineInvoker 5 years ago
spring-boot-dependencies Add auto-configuration for R2DBC's ConnectionFactory 5 years ago
spring-boot-devtools Use new AssertJ duration assertions 5 years ago
spring-boot-docs Merge branch '2.2.x' 5 years ago
spring-boot-parent Move dependency management for JNA into spring-boot-parent 5 years ago
spring-boot-properties-migrator Add missing deployed plugin to modules 5 years ago
spring-boot-starters Remove spring security dependencies from Rsocket starter 5 years ago
spring-boot-test Remove redundant useJUnitPlatform declarations 5 years ago
spring-boot-test-autoconfigure Polish 5 years ago
spring-boot-tools Test the Gradle plugin against Gradle 6.2.1 5 years ago