Рубрики
Без рубрики

Начало работы с Spring Web Flux и R2DBC в Spring Boot

Введение В этой короткой статье я попытаюсь познакомить вас с R2DBC с использованием Spring Data… С тегами tutorial, java, kotlin, spring boot.

В этой короткой статье я постараюсь познакомить вас с R2DBC с использованием Spring Data R2DBC и в мире реактивных приложений с Spring Web Flux .

Что такое R2DBC и почему вы должны беспокоиться о том, чтобы посмотреть на него? Во-первых, R2 DBC означает Реактивное подключение к реляционной базе данных. Что это значит? Простыми словами, R2DBC предоставляет возможность неблокирующих вызовов нашим реляционным базам данных (SQL)!

Цитирование https://r2dbc.io/ , R2DBC в двух словах:

  • Реактивные потоки – R2DBC основан на реактивных потоках, обеспечивающих полностью реактивный неблокирующий API.
  • Реляционные базы данных – RDBS подключает базы данных SQL с помощью реактивного API, что невозможно из-за блокирующей природы JDBC.
  • Масштабируемые решения – Реактивные потоки позволяют перейти от классического подхода с одним потоком на соединение к более мощному и масштабируемому подходу.
  • Открытая спецификация – R2DBC – это открытая спецификация, устанавливающая интерфейс, который поставщики драйверов могут реализовать, а клиенты могут использовать.

В этом руководстве мы создадим простой REST API с помощью Kotlin , Spring Web Flux и мы подключимся к нашей базе данных H2 с помощью Spring Data R2DBC .

Если вы хотите легко начать работу с проектом Spring boot, я рекомендую всегда использовать Spring Initializr .

Второе лучшее место в Интернете @ Джош Лонг .

Конфигурация Gradle

Прежде всего, мы должны настроить наш build.gradle.kts и включить зависимости:

Полный build.gradle.kts смотрите здесь: build.gradle.kts .

Конфигурация приложения

Spring Boot поставляется с несколькими автоматическими конфигурациями для Spring Data R2DBC “из коробки”. Ниже мы используем возможности Spring Boot для создания подключения к базе данных:

Затем мы создаем таблицу с именем Сотрудник и мы заполняем его некоторыми данными:

Хотя это может показаться не совсем безопасным, в нашем приложении у нас нет никаких проблем, в то время как база данных всегда будет создаваться при запуске и уничтожаться при завершении работы приложения.

REST API

Итак, мы создали нашу базу данных и заполнили ее данными, и что теперь? Давайте воспользуемся этим и создадим REST API!

Ниже у нас есть простая модель предметной области под названием Employee .

Затем давайте создадим наш репозиторий, который будет предоставлять некоторые запросы “из коробки”, и мы также определим один из наших собственных.

И последнее, но не менее важное: давайте создадим нашу конечную точку:

Результат

Давайте выполним наше приложение с помощью команды ./gradlew Запуск загрузки .

Приложение теперь работает на http://localhost:8080 !! Поздравляю!

Spring Data R2DBC все еще находится на стадии эксперимента. Хотя он включен в официальную версию Spring Boot 2.2.0, я бы не рекомендовал использовать его на производстве:).

Я надеюсь, что теперь вы лучше понимаете R2DBC.

Вы можете найти репозиторий прямо здесь:

Petros0/пружинный загрузчик-r2dbc-kotlin

Цель этого проекта – дать представление о том, как работать с R2DBC и Spring Data R2DBC.

приступая к работе

./gradlew загрузочный запуск , приложение теперь запускает localhost:8080.

Перейдите к:

http://localhost:8080/employees/

Доступные конечные точки:

ПОЛУЧИТЬ http://localhost:8080/employees/

ПОЛУЧИТЬ http://localhost:8080/employees/1

СООБЩЕНИЕ http://localhost:8080/employees/

УДАЛИТЬ http://localhost:8080/employees/

Оригинал: “https://dev.to/petros0/getting-started-with-spring-webflux-and-r2dbc-in-spring-boot-191f”