英文原文:https://spring.io/projects/spring-data-r2dbc
目录
概述
Spring Data R2DBC是更大的Spring Data系列的一部分,可以轻松实现基于R2DBC的存储库。 R2DBC代表Reactive Relational Database Connectivity,它是一个使用反应式驱动程序集成关系数据库的孵化器。 Spring Data R2DBC为R2DBC应用熟悉的Spring抽象和存储库支持。 它可以更轻松地构建在响应式应用程序堆栈中使用关系数据访问技术的Spring驱动的应用程序。
Spring Data R2DBC旨在简化概念。 为了实现这一点,它不提供缓存,延迟加载,后写或ORM框架的许多其他功能。 这使得Spring Data R2DBC成为一个简单,有限,自以为是的对象映射器。
Spring Data R2DBC允许功能方法与您的数据库交互,提供DatabaseClient作为应用程序的入口点。
通过选择数据库驱动程序并创建DatabaseClient实例开始:
-
Postgres (
io.r2dbc:r2dbc-postgresql
) -
H2 (
io.r2dbc:r2dbc-h2
) -
Microsoft SQL Server (
io.r2dbc:r2dbc-mssql
)
PostgreSQL示例:
PostgresqlConnectionFactory connectionFactory = new PostgresqlConnectionFactory(PostgresqlConnectionConfiguration.builder()
.host(…)
.database(…)
.username(…)
.password(…).build());
DatabaseClient client = DatabaseClient.create(connectionFactory);
Mono<Integer> affectedRows = client.execute()
.sql("UPDATE person SET name = 'Joe'")
.fetch().rowsUpdated();
Flux<Person> all = client.execute()
.sql("SELECT id, name FROM person")
.as(Person.class)
.fetch().all();
客户端API提供以下功能:
- 执行通用SQL并消耗更新计数/行结果。
- 具有分页和排序的通用SELECT。
- SELECT具有分页和排序的映射对象。
- 带参数绑定的通用INSERT。
- INSERT映射对象。
- 使用本机语法进行参数绑定。
- 结果消耗:更新计数,未映射(Map <String,Object>),映射到实体,提取功能。
- 使用@Query注释方法的反应式存储库。
- 事务管理。
快速开始
使用Spring Initializr引导您的应用程序。
学习
文档
每个Spring项目都有自己的; 它详细解释了如何使用项目功能以及使用它们可以实现的功能。
1.0.0 M1 PRE | Reference Doc. | API Doc. |
1.0.0 SNAPSHOT | Reference Doc. | API Doc. |
示例
尝试一些例子: