From a2afbd87536fb10a9d2a70336ec4540f07cba2f3 Mon Sep 17 00:00:00 2001
From: wangyu <727842003@qq.com>
Date: Thu, 11 Jul 2024 17:57:20 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9A=82=E5=AD=98=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
fluent-sql-core/pom.xml | 5 ++
.../group/flyfish/fluent/chain/SQLImpl.java | 33 +++++++---
.../fluent/chain/common/ExecutableSql.java | 9 +++
.../chain/select/AfterOrderSqlChain.java | 39 +-----------
.../fluent/chain/select/FetchSqlChain.java | 42 +++++++++++++
.../fluent/chain/select/PieceSqlChain.java | 25 ++++++++
.../group/flyfish/fluent/entity/DataPage.java | 22 +++++++
.../operations/FluentSQLOperations.java | 11 ++++
.../ReactiveFluentSQLOperations.java | 56 +++++++++++++++++
fluent-sql-spring-boot-starter/pom.xml | 12 +++-
.../FluentSqlAutoConfiguration.java | 48 +++++++++++---
.../pom.xml | 8 ++-
.../fluent/mapping/SQLMappedRowMapper.java | 0
.../JdbcTemplateFluentSQLOperations.java | 15 ++++-
.../operations/R2dbcFluentSQLOperations.java | 63 +++++++++++++++++++
.../flyfish/framework/FluentJdbcTest.java | 2 +-
.../group/flyfish/framework/TestCase.java | 0
.../framework/cases/AbstractTestCase.java | 0
.../framework/cases/FluentSqlTestCase.java | 0
.../flyfish/framework/cases/JdbcTestCase.java | 0
.../framework/cases/MybatisTestCase.java | 0
.../framework/cases/SingleTableTestCase.java | 0
.../group/flyfish/framework/entity/Po.java | 0
.../flyfish/framework/entity/Property.java | 0
.../flyfish/framework/entity/SaasOrder.java | 0
.../flyfish/framework/entity/SaasPlan.java | 0
.../flyfish/framework/entity/SaasQuota.java | 0
.../flyfish/framework/entity/SaasTenant.java | 0
.../framework/mapper/TenantContextMapper.java | 0
.../framework/mapper/TenantContextMapper.xml | 0
.../flyfish/framework/utils/LogUtils.java | 0
.../flyfish/framework/vo/TenantContext.java | 0
pom.xml | 14 ++++-
33 files changed, 341 insertions(+), 63 deletions(-)
create mode 100644 fluent-sql-core/src/main/java/group/flyfish/fluent/chain/select/FetchSqlChain.java
create mode 100644 fluent-sql-core/src/main/java/group/flyfish/fluent/chain/select/PieceSqlChain.java
create mode 100644 fluent-sql-core/src/main/java/group/flyfish/fluent/entity/DataPage.java
create mode 100644 fluent-sql-core/src/main/java/group/flyfish/fluent/operations/ReactiveFluentSQLOperations.java
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/pom.xml (89%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/main/java/group/flyfish/fluent/mapping/SQLMappedRowMapper.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java (87%)
create mode 100644 fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/R2dbcFluentSQLOperations.java
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/FluentJdbcTest.java (98%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/TestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/cases/AbstractTestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/cases/FluentSqlTestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/cases/JdbcTestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/cases/MybatisTestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/cases/SingleTableTestCase.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/Po.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/Property.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/SaasOrder.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/SaasPlan.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/SaasQuota.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/entity/SaasTenant.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.xml (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/utils/LogUtils.java (100%)
rename {fluent-sql-spring-jdbc => fluent-sql-spring}/src/test/java/group/flyfish/framework/vo/TenantContext.java (100%)
diff --git a/fluent-sql-core/pom.xml b/fluent-sql-core/pom.xml
index a8d0a19..1de98f5 100644
--- a/fluent-sql-core/pom.xml
+++ b/fluent-sql-core/pom.xml
@@ -33,6 +33,11 @@
javax.persistence
persistence-api
+
+ io.projectreactor
+ reactor-core
+ true
+
org.slf4j
slf4j-api
diff --git a/fluent-sql-core/src/main/java/group/flyfish/fluent/chain/SQLImpl.java b/fluent-sql-core/src/main/java/group/flyfish/fluent/chain/SQLImpl.java
index 32669f3..01a9b7e 100644
--- a/fluent-sql-core/src/main/java/group/flyfish/fluent/chain/SQLImpl.java
+++ b/fluent-sql-core/src/main/java/group/flyfish/fluent/chain/SQLImpl.java
@@ -5,6 +5,7 @@ import group.flyfish.fluent.chain.common.HandleSqlChain;
import group.flyfish.fluent.chain.common.PreSqlChain;
import group.flyfish.fluent.chain.select.AfterOrderSqlChain;
import group.flyfish.fluent.chain.select.AfterWhereSqlChain;
+import group.flyfish.fluent.chain.select.PieceSqlChain;
import group.flyfish.fluent.chain.update.AfterSetSqlChain;
import group.flyfish.fluent.debug.FluentSqlDebugger;
import group.flyfish.fluent.entity.SQLEntity;
@@ -39,6 +40,7 @@ final class SQLImpl extends ConcatSegment implements SQLOperations, Pre
// 共享的操作
private static FluentSQLOperations SHARED_OPERATIONS;
+
// 参数map,有序
private final List
group.flyfish.framework
- fluent-sql-spring-jdbc
+ fluent-sql-spring
+
+
+ org.springframework
+ spring-r2dbc
+ true
+
+
+ org.springframework
+ spring-jdbc
+ true
diff --git a/fluent-sql-spring-boot-starter/src/main/java/group/flyfish/fluent/autoconfigure/FluentSqlAutoConfiguration.java b/fluent-sql-spring-boot-starter/src/main/java/group/flyfish/fluent/autoconfigure/FluentSqlAutoConfiguration.java
index 23baa0e..cab77cf 100644
--- a/fluent-sql-spring-boot-starter/src/main/java/group/flyfish/fluent/autoconfigure/FluentSqlAutoConfiguration.java
+++ b/fluent-sql-spring-boot-starter/src/main/java/group/flyfish/fluent/autoconfigure/FluentSqlAutoConfiguration.java
@@ -1,13 +1,20 @@
package group.flyfish.fluent.autoconfigure;
+import group.flyfish.fluent.autoconfigure.FluentSqlAutoConfiguration.JdbcFluentSqlAutoConfigure;
+import group.flyfish.fluent.autoconfigure.FluentSqlAutoConfiguration.R2dbcFluentSqlAutoConfigure;
import group.flyfish.fluent.operations.FluentSQLOperations;
import group.flyfish.fluent.operations.JdbcTemplateFluentSQLOperations;
+import group.flyfish.fluent.operations.R2dbcFluentSQLOperations;
+import group.flyfish.fluent.operations.ReactiveFluentSQLOperations;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Import;
import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.r2dbc.core.DatabaseClient;
import javax.sql.DataSource;
@@ -17,17 +24,38 @@ import javax.sql.DataSource;
* @author wangyu
*/
@AutoConfigureAfter(DataSourceAutoConfiguration.class)
+@Import({R2dbcFluentSqlAutoConfigure.class, JdbcFluentSqlAutoConfigure.class})
public class FluentSqlAutoConfiguration {
- /**
- * 动态注入初始化的bean,完成注入配置
- *
- * @param dataSource 从spring datasource注入
- */
- @Bean
- @ConditionalOnMissingBean(FluentSQLOperations.class)
- @ConditionalOnBean(DataSource.class)
- public FluentSQLOperations fluentSQLOperations(DataSource dataSource) {
- return new JdbcTemplateFluentSQLOperations(new JdbcTemplate(dataSource));
+ @ConditionalOnClass(DatabaseClient.class)
+ static class R2dbcFluentSqlAutoConfigure {
+
+ /**
+ * 动态注入初始化的bean,完成注入配置
+ *
+ * @param databaseClient 从spring r2dbc注入
+ */
+ @Bean
+ @ConditionalOnMissingBean(ReactiveFluentSQLOperations.class)
+ @ConditionalOnBean(DatabaseClient.class)
+ public ReactiveFluentSQLOperations fluentSQLOperations(DatabaseClient databaseClient) {
+ return new R2dbcFluentSQLOperations(databaseClient);
+ }
+ }
+
+ @ConditionalOnClass(DataSource.class)
+ static class JdbcFluentSqlAutoConfigure {
+
+ /**
+ * 动态注入初始化的bean,完成注入配置
+ *
+ * @param dataSource 从spring datasource注入
+ */
+ @Bean
+ @ConditionalOnMissingBean(FluentSQLOperations.class)
+ @ConditionalOnBean(DataSource.class)
+ public FluentSQLOperations fluentSQLOperations(DataSource dataSource) {
+ return new JdbcTemplateFluentSQLOperations(new JdbcTemplate(dataSource));
+ }
}
}
diff --git a/fluent-sql-spring-jdbc/pom.xml b/fluent-sql-spring/pom.xml
similarity index 89%
rename from fluent-sql-spring-jdbc/pom.xml
rename to fluent-sql-spring/pom.xml
index 7e9c538..1e641f6 100644
--- a/fluent-sql-spring-jdbc/pom.xml
+++ b/fluent-sql-spring/pom.xml
@@ -9,7 +9,7 @@
4.0.0
- fluent-sql-spring-jdbc
+ fluent-sql-spring
8
@@ -24,6 +24,12 @@
org.springframework
spring-jdbc
+ true
+
+
+ org.springframework
+ spring-r2dbc
+ true
junit
diff --git a/fluent-sql-spring-jdbc/src/main/java/group/flyfish/fluent/mapping/SQLMappedRowMapper.java b/fluent-sql-spring/src/main/java/group/flyfish/fluent/mapping/SQLMappedRowMapper.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/main/java/group/flyfish/fluent/mapping/SQLMappedRowMapper.java
rename to fluent-sql-spring/src/main/java/group/flyfish/fluent/mapping/SQLMappedRowMapper.java
diff --git a/fluent-sql-spring-jdbc/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java b/fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java
similarity index 87%
rename from fluent-sql-spring-jdbc/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java
rename to fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java
index 94d4e12..ec22771 100644
--- a/fluent-sql-spring-jdbc/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java
+++ b/fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/JdbcTemplateFluentSQLOperations.java
@@ -1,6 +1,7 @@
package group.flyfish.fluent.operations;
import group.flyfish.fluent.chain.SQL;
+import group.flyfish.fluent.entity.DataPage;
import group.flyfish.fluent.entity.SQLEntity;
import group.flyfish.fluent.mapping.SQLMappedRowMapper;
import org.springframework.dao.EmptyResultDataAccessException;
@@ -41,7 +42,7 @@ public class JdbcTemplateFluentSQLOperations implements FluentSQLOperations {
@SuppressWarnings("all")
public T selectOne(SQLEntity entity, Class clazz) {
try {
- String sql = entity.getSql().concat(" limit 1");
+ String sql = entity.getSql();
if (ClassUtils.isPrimitiveOrWrapper(clazz)) {
return jdbcOperations.queryForObject(sql, clazz, entity.getParameters());
}
@@ -67,6 +68,18 @@ public class JdbcTemplateFluentSQLOperations implements FluentSQLOperations {
return jdbcOperations.query(sql, new SQLMappedRowMapper<>(clazz), entity.getParameters());
}
+ /**
+ * 分页查询
+ *
+ * @param entity sql实体
+ * @param clazz 目标类型
+ * @return 返回的分页对象
+ */
+ @Override
+ public DataPage selectPage(SQLEntity entity, Class clazz) {
+ return null;
+ }
+
/**
* 直接执行sql,根据update count返回更新行数,如果是查询,永远返回0
*
diff --git a/fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/R2dbcFluentSQLOperations.java b/fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/R2dbcFluentSQLOperations.java
new file mode 100644
index 0000000..96ee6b7
--- /dev/null
+++ b/fluent-sql-spring/src/main/java/group/flyfish/fluent/operations/R2dbcFluentSQLOperations.java
@@ -0,0 +1,63 @@
+package group.flyfish.fluent.operations;
+
+import group.flyfish.fluent.entity.DataPage;
+import group.flyfish.fluent.entity.SQLEntity;
+import lombok.RequiredArgsConstructor;
+import org.springframework.r2dbc.core.DatabaseClient;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+@RequiredArgsConstructor
+public class R2dbcFluentSQLOperations implements ReactiveFluentSQLOperations {
+
+ private final DatabaseClient databaseClient;
+
+ /**
+ * 执行一条sql,并且序列化为对象
+ * 注意,如果查询不止一条,该方法仅返回第一条数据
+ * 如果没有结果,将返回null
+ *
+ * @param entity sql实体
+ * @param clazz 目标类型
+ * @return 查询结果
+ */
+ @Override
+ public Mono selectOne(SQLEntity entity, Class clazz) {
+ return null;
+ }
+
+ /**
+ * 执行一条sql,并且查询出所有行
+ *
+ * @param entity sql实体
+ * @param clazz 目标类型
+ * @return 返回的列表
+ */
+ @Override
+ public Flux select(SQLEntity entity, Class clazz) {
+ return null;
+ }
+
+ /**
+ * 分页查询
+ *
+ * @param entity sql实体
+ * @param clazz 目标类型
+ * @return 返回的分页对象
+ */
+ @Override
+ public Mono> selectPage(SQLEntity entity, Class clazz) {
+ return null;
+ }
+
+ /**
+ * 直接执行sql,根据update count返回更新行数,如果是查询,永远返回0
+ *
+ * @param entity sql实体
+ * @return 更新行数
+ */
+ @Override
+ public Mono execute(SQLEntity entity) {
+ return null;
+ }
+}
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/FluentJdbcTest.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/FluentJdbcTest.java
similarity index 98%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/FluentJdbcTest.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/FluentJdbcTest.java
index dd32b55..9c1f805 100644
--- a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/FluentJdbcTest.java
+++ b/fluent-sql-spring/src/test/java/group/flyfish/framework/FluentJdbcTest.java
@@ -35,7 +35,7 @@ public class FluentJdbcTest {
public void testSql() throws SQLException, JsonProcessingException {
DataSource dataSource = new SimpleDriverDataSource(
new Driver(),
- "jdbc:mysql://127.0.0.1:3306/epi_project?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai",
+ "jdbc:mysql://127.0.0.1:3306/epi_project?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true",
"root",
"Unicom#2018" // "oI3WtMO8h%mSYARp"
);
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/TestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/TestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/TestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/TestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/AbstractTestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/cases/AbstractTestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/AbstractTestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/cases/AbstractTestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/FluentSqlTestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/cases/FluentSqlTestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/FluentSqlTestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/cases/FluentSqlTestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/JdbcTestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/cases/JdbcTestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/JdbcTestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/cases/JdbcTestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/MybatisTestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/cases/MybatisTestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/MybatisTestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/cases/MybatisTestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/SingleTableTestCase.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/cases/SingleTableTestCase.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/cases/SingleTableTestCase.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/cases/SingleTableTestCase.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/Po.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/Po.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/Po.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/Po.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/Property.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/Property.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/Property.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/Property.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasOrder.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasOrder.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasOrder.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasOrder.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasPlan.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasPlan.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasPlan.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasPlan.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasQuota.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasQuota.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasQuota.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasQuota.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasTenant.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasTenant.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/entity/SaasTenant.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/entity/SaasTenant.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.xml b/fluent-sql-spring/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.xml
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.xml
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/mapper/TenantContextMapper.xml
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/utils/LogUtils.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/utils/LogUtils.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/utils/LogUtils.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/utils/LogUtils.java
diff --git a/fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/vo/TenantContext.java b/fluent-sql-spring/src/test/java/group/flyfish/framework/vo/TenantContext.java
similarity index 100%
rename from fluent-sql-spring-jdbc/src/test/java/group/flyfish/framework/vo/TenantContext.java
rename to fluent-sql-spring/src/test/java/group/flyfish/framework/vo/TenantContext.java
diff --git a/pom.xml b/pom.xml
index 3f0a5ba..fcd053b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
fluent-sql-core
- fluent-sql-spring-jdbc
+ fluent-sql-spring
fluent-sql-annotations
fluent-sql-spring-boot-starter
@@ -88,7 +88,7 @@
group.flyfish.framework
- fluent-sql-spring-jdbc
+ fluent-sql-spring
${project.version}
@@ -121,6 +121,11 @@
spring-context
${spring.version}
+
+ org.springframework
+ spring-r2dbc
+ ${spring.version}
+
org.mybatis
mybatis
@@ -153,6 +158,11 @@
8.0.29
test
+
+ io.projectreactor
+ reactor-core
+ 3.6.7
+