springboot 不响应字段为空_Postgres、R2DBC、Spring Data JDBC和Spring WebFlux的响应式API简介...

本文介绍了使用R2DBC、Spring Data JDBC和Spring WebFlux构建响应式Web应用程序,特别是针对Postgres数据库的响应性支持。通过示例展示了如何创建响应式CRUD存储库、实现Entity和DTO以及构建Web应用程序。同时提到了Spring Data JDBC作为简化JDBC访问的工具,以及其与R2DBC结合使用的情况。
摘要由CSDN通过智能技术生成

想要了解更多关于响应式API的信息?看看这篇文章,我们将探索使用R2DBC,Spring Data JDBC等构建响应式Web应用程序。

c2655ac34716f5b6ab7f785e14ae5847.png

我知道 - 标题中已列出很多技术。 Spring WebFlux,作为构建响应堆栈Web应用程序的项目,已经被Spring 5和Spring Boot 2中引入。我曾在这篇文章中-Spring WebFlux和Spring Cloud的响应式微服务描述了它如何与Spring Boot和Spring Cloud来构建响应式微服务。 Spring 5还引入了支持对NoSQL数据库进行响应性访问的项目,如Cassandra,MongoDB或Couchbase。但是,仍然缺乏对访问关系型数据库的响应性的支持。这一变化将随着R2DBC(响应关系数据库连接)项目一起发生变化。该项目也由Pivotal成员开发。这似乎是一个非常有趣的行为,然而,它正处于起步阶段。无论如何,有一个与Postgres集成的模块,我们将用它来演示应用程序。

R2DBC不是本文中描述的唯一一个新的有趣解决方案。我还将向您展示如何使用Spring Data JDBC - 这是最近发布的另一个非常有趣的项目。值得一提的是Spring Data JDBC的功能。该项目已经发布,可在1.0版本下使用。它是更大的Spring Data框架的一部分。它提供了基于JDBC的存储库抽象。创建该库的主要原因是允许使用Spring Data(通过CrudRepository接口)访问关系数据库,而不将JPA库包含到应用程序依赖项中。当然,JPA仍然是用于Java应用程序的主要持久性API。 Spring Data JDBC旨在通过不实现延迟加载,缓存,脏上下文和会话等流行模式,在概念上比JPA更简单。它还为基于注释的映射提供非常有限的支持。最后,它提供了使用R2DBC访问关系数据库的反应式存储库的实现。虽然该模块仍在开发中(只有SNAPSHOT版本可用),但我们将在演示应用程序中尝试使用它。让我们继续做下去。

依赖包

我们使用Kotlin来实现。首先,我们包含一些必需的Kotlin依赖项。

org.jetbrains.kotlin

kotlin-stdlib

${kotlin.version}

com.fasterxml.jackson.module

jackson-module-kotlin

org.jetbrains.kotlin

kotlin-reflect

org.jetbrains.kotlin

kotlin-test-junit

${kotlin.version}

test

我们还应该添加kotlin-maven-plugin来支持Spring。

org.jetbrains.kotlin

kotlin-maven-plugin

${kotlin.version}

compile

compile

compile

test-compile

test-compile

test-compile

-Xjsr305=strict

spring

然后,我们继续包含演示实现所需的框架。我们需要包含专用于使用R2DBC访问数据库的Spring Data JDBC的特殊SNAPSHOT版本。我们还必须添加R2DBC库和Spring WebFlux。正如您在下面看到的,只有Spring WebFlux是稳定版本(作为Spring Boot RELEASE的一部分)。

org.springframework.boot

spring-boot-starter-webflux

org.springframework.data

spring-data-jdbc

1.0.0.r2dbc-SNAPSHOT

io.r2dbc

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值