Spring系列學習之Spring Data R2DBC資料訪問
阿新 • • 發佈:2018-12-22
英文原文: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. |
示例
嘗試一些例子: