openGauss
开源数据库
openGauss社区官网
开源社区
MogDB数据库支持R2DBC响应式协议访问
2022-04-12MogDB数据库支持R2DBC响应式协议访问
MogDB 数据库支持 R2DBC 响应式协议访问
本文出处:https://www.modb.pro/db/232405
我们知道使用 JDBC 协议是阻塞式的连接,为了解决这个问题,出现了两个标准,一个是 oracle 提出的 ADBC (Asynchronous Database Access API),另一个就是 Pivotal 提出的 R2DBC (Reactive Relational Database Connectivity)。
目前有部分关系型数据库实现了 R2DBC 协议,包括 mysql、mssql、postgresql 等。MogDB 数据库兼容 PostgreSQL R2DBC Driver,下面通过样例进行测试。
首先快速搭建 MogDB 环境
使用 docker 命令一键搭建
docker run --name mogdb \ --privileged=true \ --detach \ --env GS_PASSWORD=Admin@1234 \ --publish 15400:5432 \ swr.cn-east-3.myhuaweicloud.com/enmotech/mogdb:2.0.1_amd
数据库结构化准备
create database productdb;
\c productdb
create user moguser password 'Admin@1234';
\c productdb moguser
CREATE TABLE product
(
id integer,
description character varying(255),
price numeric,
PRIMARY KEY (id)
);
insert into product values(1,'PostgreSQL',0),
(2,'MogDB',1);
Java 项目工程
参考如下链接:https://github.com/vinsguru/vinsguru-blog-code-samples/tree/master/
配置 MogDB 数据库连接信息
修改工程项目下的 application.properties 文件
java
spring.r2dbc.url=r2dbc:postgresql://***.***.***.***:15400/productdb
spring.r2dbc.username=moguser
spring.r2dbc.password=******
运行程序进行测试点击R2dbcApplication文件,Run As运行
然后我们可以打开浏览器,输入接口地址进行测试:
下面是查询所有产品(http://localhost:8080/product/all)
更多R2DBC用法可以参考github上pgjdbc/r2dbc-postgresql