From 02b8d6d3ca710869a10ea7a77d7d6f52887e40ea Mon Sep 17 00:00:00 2001
From: linbangquan <1437892690@qq.com>
Date: Wed, 15 Nov 2023 18:25:23 +0800
Subject: [PATCH 1/3] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20SQL=E8=AF=AD?=
=?UTF-8?q?=E5=8F=A5=E9=80=82=E9=85=8DTiDB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
关联 #[1024432422748160]SQL语句适配TiDB http://192.168.0.96:8090/demo/rdm.html#/task-detail/939050947543040/939050947543050/1024432422748160
---
src/main/java/META-INF/root-context.xml | 10 +----
.../plugin/NeatLogicDatabaseIdProvider.java | 45 +++++++------------
.../store/mysql/DatasourceManager.java | 13 ++++++
.../store/mysql/NeatLogicBasicDataSource.java | 12 ++---
4 files changed, 38 insertions(+), 42 deletions(-)
diff --git a/src/main/java/META-INF/root-context.xml b/src/main/java/META-INF/root-context.xml
index 60f38ce9a..c8d5ba55d 100644
--- a/src/main/java/META-INF/root-context.xml
+++ b/src/main/java/META-INF/root-context.xml
@@ -100,15 +100,7 @@
-
-
-
- mysql
- oceanbase
- tidb
-
-
-
+
diff --git a/src/main/java/neatlogic/framework/dao/plugin/NeatLogicDatabaseIdProvider.java b/src/main/java/neatlogic/framework/dao/plugin/NeatLogicDatabaseIdProvider.java
index e01091b78..22eb0929a 100644
--- a/src/main/java/neatlogic/framework/dao/plugin/NeatLogicDatabaseIdProvider.java
+++ b/src/main/java/neatlogic/framework/dao/plugin/NeatLogicDatabaseIdProvider.java
@@ -1,31 +1,22 @@
package neatlogic.framework.dao.plugin;
+import neatlogic.framework.store.mysql.DatabaseVendor;
+import neatlogic.framework.store.mysql.DatasourceManager;
import org.apache.ibatis.logging.Log;
import org.apache.ibatis.logging.LogFactory;
import org.apache.ibatis.mapping.DatabaseIdProvider;
import javax.sql.DataSource;
import java.sql.*;
-import java.util.Map;
import java.util.Objects;
-import java.util.Properties;
public class NeatLogicDatabaseIdProvider implements DatabaseIdProvider {
- private final String MYSQL = "MySQL";
- private final String TIDB = "TiDB";
- private final String OCEAN_BASE = "OceanBase";
-
private String databaseId;
- private Properties properties;
public NeatLogicDatabaseIdProvider() {
}
- @Override
- public void setProperties(Properties p) {
- this.properties = p;
- }
@Override
public String getDatabaseId(DataSource dataSource) throws SQLException {
@@ -37,6 +28,7 @@ public class NeatLogicDatabaseIdProvider implements DatabaseIdProvider {
}
try {
databaseId = getDatabaseName(dataSource);
+ DatasourceManager.setDatabaseId(databaseId);
} catch (Exception e) {
LogHolder.log.error("Could not get a databaseId from dataSource", e);
}
@@ -44,24 +36,19 @@ public class NeatLogicDatabaseIdProvider implements DatabaseIdProvider {
}
private String getDatabaseName(DataSource dataSource) throws SQLException {
- String productName = getDatabaseProductName(dataSource);
- if (this.properties != null) {
- for (Map.Entry