From 73569a63f8315e895b52928c69f67f77164bc854 Mon Sep 17 00:00:00 2001 From: zhaojun <873019219@qq.com> Date: Sat, 27 May 2023 16:12:15 +0800 Subject: [PATCH] =?UTF-8?q?:card=5Ffile=5Fbox:=20=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=85=BC=E5=AE=B9=E6=80=A7=E5=A2=9E=E5=BC=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/config/MyDatabaseIdProvider.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/main/java/im/zhaojun/zfile/core/config/MyDatabaseIdProvider.java diff --git a/src/main/java/im/zhaojun/zfile/core/config/MyDatabaseIdProvider.java b/src/main/java/im/zhaojun/zfile/core/config/MyDatabaseIdProvider.java new file mode 100644 index 0000000..88d02ef --- /dev/null +++ b/src/main/java/im/zhaojun/zfile/core/config/MyDatabaseIdProvider.java @@ -0,0 +1,34 @@ +package im.zhaojun.zfile.core.config; + +import org.apache.ibatis.mapping.DatabaseIdProvider; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.SQLException; + +@Component +public class MyDatabaseIdProvider implements DatabaseIdProvider { + + private static final String DATABASE_MYSQL = "MySQL"; + private static final String DATABASE_SQLITE = "SQLite"; + + @Override + public String getDatabaseId(DataSource dataSource) throws SQLException { + Connection conn = dataSource.getConnection(); + String dbName = conn.getMetaData().getDatabaseProductName(); + String dbAlias = ""; + switch (dbName) { + case DATABASE_MYSQL: + dbAlias = "mysql"; + break; + case DATABASE_SQLITE: + dbAlias = "sqlite"; + break; + default: + break; + } + return dbAlias; + } + +}