Spring Data R2DBC 1.0 M2 和 Spring Boot 启动器已发布

发布 | Mark Paluch | 2019年5月15日 | ...

Spring Data R2DBC

我很高兴代表社区和每一位贡献者宣布 Spring Data R2DBC 1.0 的第二个里程碑版本发布。 它基于最近发布的 Moore M4 版本R2DBC 0.8.0.M8 版本。 请注意,Spring Data R2DBC 在 Moore 发布列车之外发布,它将成为下一个发布列车 Neumann 的一部分。

Spring Data R2DBC 包含了 32 个已修复的工单。 最值得注意的功能是

  • 通过使用 jasync-sql 支持 MySQL。
  • 响应式事务管理器。
  • 用于 insert/update/delete 操作的 Fluent API。
  • 协程扩展。
  • 支持自定义转换。
  • 通过使用 Dialect 实例将命名参数转换为本机绑定标记。
  • 支持简单类型的单列投影。
  • 重构的包结构。

如果您使用 Maven,请在您的 pom.xml 中包含以下行,以在您的项目中使用 Spring Data R2DBC 1.0 M2

<dependencies>
  <dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-r2dbc</artifactId>
    <version>1.0.0.M2</version>
  </dependency>
</dependencies>

<!-- R2DBC 0.8.0.M8 required -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.r2dbc</groupId>
      <artifactId>r2dbc-bom</artifactId>
      <version>Arabba-M8</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<repositories>
  <repository>
    <id>spring-milestone</id>
    <url>https://repo.spring.io/milestone</url>
  </repository>
</repositories>

Spring Boot 自动配置和 Actuator

与此版本一起,我还想宣布 Spring Boot 对 R2DBC 0.1.0.M1 的里程碑版本支持。 这是一个实验性的 Spring Boot 模块,提供自动配置和 Actuator 支持。 它被标记为实验性的,因为此支持最终可能会合并到未来的 Spring Boot 版本中。

以下是从实验性 Spring Boot 对 R2DBC 的支持中获得的内容

  • 基于 URL 的 R2DBC ConnectionFactory 配置 (spring.r2dbc.url=rdbc:postgresql://<server>:<port>/<database>)。
  • H2 的嵌入式数据库支持。 当 r2dbc-h2spring-jdbc 可用时,H2 配置为同时用于 R2DBC 和 JDBC 访问。
  • 连接池支持 (spring.r2dbc.pool.initial-sizespring.r2dbc.pool.max-sizespring.r2dbc.validation-query)。
  • 通过暴露响应式 ConnectionFactoryHealthIndicator 提供 Actuator 支持。
  • 配置 R2dbcConnectionManager 以启用响应式 @Transactional
  • 配置 TransactionalOperator bean。
  • 通过暴露 R2dbc bean 来配置 r2dbc-client
<dependencies>
  <dependency>
    <groupId>org.springframework.boot.experimental</groupId>
    <artifactId>spring-boot-starter-data-r2dbc</artifactId>
    <version>0.1.0.M1</version>
  </dependency>

  <dependency>
    <groupId>org.springframework.boot.experimental</groupId>
    <artifactId>spring-boot-actuator-autoconfigure-r2dbc</artifactId>
    <version>0.1.0.M1</version>
  </dependency>
  
  <dependency>
    <groupId>io.r2dbc</groupId>
    <artifactId>r2dbc-postgresql</artifactId>
    <version>0.8.0.M8</version>
    <scope>runtime</scope>
  </dependency>
  
  <!-- Enable for connection pooling -->
  <dependency>
    <groupId>io.r2dbc</groupId>
    <artifactId>r2dbc-pool</artifactId>
    <scope>runtime</scope>
  </dependency>
</dependencies>

<repositories>
  <repository>
    <id>spring-milestone</id>
    <url>https://repo.spring.io/milestone</url>
  </repository>
</repositories>

存储库 readme 和我们的 文档 是您入门的最佳场所。 此外,请务必查看我们的 Spring WebFlux/R2DBC/H2 示例

下一步

R2DBC 继续发展。 我们预计在 10 月份左右会发布另一系列 R2DBC 版本,以便我们可以在 Spring Data R2DBC 中选取这些版本,并最终发布一个候选版本。 我们的积压包含一系列关于方言支持的改进,以改进可扩展性模型,我们期待允许查询拦截以在绑定和 SQL 语句发送到数据库之前对其进行更改。

为了总结,这里是指向变更日志、GitHub 存储库和文档的链接

获取 Spring 新闻通讯

保持与 Spring 新闻通讯的联系

订阅

领先一步

VMware 提供培训和认证来加速您的进步。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部