Skip to content

Commit 55fca60

Browse files
committed
Java:MultiDataSource 新增支持达梦数据库
1 parent 7c73c22 commit 55fca60

File tree

3 files changed

+60
-31
lines changed

3 files changed

+60
-31
lines changed

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -68,16 +68,34 @@
6868
<groupId>com.github.APIJSON</groupId>
6969
<artifactId>apijson-framework</artifactId>
7070
<version>5.2.0</version>
71+
<exclusions>
72+
<exclusion>
73+
<groupId>com.github.Tencent</groupId>
74+
<artifactId>APIJSON</artifactId>
75+
</exclusion>
76+
</exclusions>
7177
</dependency>
7278
<dependency>
7379
<groupId>com.github.APIJSON</groupId>
7480
<artifactId>apijson-column</artifactId>
7581
<version>1.2.5</version>
82+
<exclusions>
83+
<exclusion>
84+
<groupId>com.github.Tencent</groupId>
85+
<artifactId>APIJSON</artifactId>
86+
</exclusion>
87+
</exclusions>
7688
</dependency>
7789
<dependency>
7890
<groupId>com.github.APIJSON</groupId>
7991
<artifactId>apijson-router</artifactId>
8092
<version>1.0.6</version>
93+
<exclusions>
94+
<exclusion>
95+
<groupId>com.github.Tencent</groupId>
96+
<artifactId>APIJSON</artifactId>
97+
</exclusion>
98+
</exclusions>
8199
</dependency>
82100
<!-- 可使用 libs 目录的 apijson-orm.jar, apijson-framework.jar, apijson-column.jar 来替代,两种方式二选一 >>>>>>>>>> -->
83101

@@ -103,11 +121,11 @@
103121
<version>2.0.38</version>
104122
</dependency>
105123

106-
<dependency>
107-
<groupId>org.nebula-contrib</groupId>
108-
<artifactId>nebula-jdbc</artifactId>
109-
<version>3.0.0</version>
110-
</dependency>
124+
<!-- <dependency>-->
125+
<!-- <groupId>org.nebula-contrib</groupId>-->
126+
<!-- <artifactId>nebula-jdbc</artifactId>-->
127+
<!-- <version>3.0.0</version>-->
128+
<!-- </dependency>-->
111129
<!-- Oracle, SQLServer 等其它数据库的 JDBC 驱动,可以在这里加上 Maven 依赖或 libs 目录放 Jar 包并依赖 -->
112130
<!-- 数据库 JDBC 驱动 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -->
113131

@@ -120,11 +138,11 @@
120138
</dependency>
121139

122140
<!-- 需要用的 HikariCP 数据库连接池库,3.1.0 以上 -->
123-
<dependency>
124-
<groupId>com.zaxxer</groupId>
125-
<artifactId>HikariCP</artifactId>
126-
<version>5.0.1</version>
127-
</dependency>
141+
<!-- <dependency>-->
142+
<!-- <groupId>com.zaxxer</groupId>-->
143+
<!-- <artifactId>HikariCP</artifactId>-->
144+
<!-- <version>5.0.1</version>-->
145+
<!-- </dependency>-->
128146

129147
<!-- 需要用的 Druid 数据库连接池库,1.0.29 以上 -->
130148
<dependency>

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -144,24 +144,23 @@ public void addCorsMappings(CorsRegistry registry) {
144144
// e.printStackTrace();
145145
// Log.e(TAG, "加载 DB2 驱动失败,请检查 pom.xml 中 com.ibm.db2 版本是否存在以及可用 !!!");
146146
// }
147-
148-
try { //加载驱动程序
149-
Log.d(TAG, "尝试加载 TDengine 驱动 <<<<<<<<<<<<<<<<<<<<< ");
150-
Class.forName("com.taosdata.jdbc.TSDBDriver");
151-
Log.d(TAG, "成功加载 TDengine 驱动!>>>>>>>>>>>>>>>>>>>>> ");
152-
} catch (ClassNotFoundException e) {
153-
e.printStackTrace();
154-
Log.e(TAG, "加载 TDengine 驱动失败,请检查 pom.xml 中 com.taosdata.jdbc 版本是否存在以及可用 !!!");
155-
}
156-
157-
try { //加载驱动程序
158-
Log.d(TAG, "尝试加载 NebulaGraph 驱动 <<<<<<<<<<<<<<<<<<<<< ");
159-
Class.forName("com.vesoft.nebula.jdbc.impl.NebulaDriver");
160-
Log.d(TAG, "成功加载 NebulaGraph 驱动!>>>>>>>>>>>>>>>>>>>>> ");
161-
} catch (ClassNotFoundException e) {
162-
e.printStackTrace();
163-
Log.e(TAG, "加载 NebulaGraph 驱动失败,请检查 pom.xml 中 org.nebula-contrib 版本是否存在以及可用 !!!");
164-
}
147+
// try { //加载驱动程序
148+
// Log.d(TAG, "尝试加载 TDengine 驱动 <<<<<<<<<<<<<<<<<<<<< ");
149+
// Class.forName("com.taosdata.jdbc.TSDBDriver");
150+
// Log.d(TAG, "成功加载 TDengine 驱动!>>>>>>>>>>>>>>>>>>>>> ");
151+
// } catch (ClassNotFoundException e) {
152+
// e.printStackTrace();
153+
// Log.e(TAG, "加载 TDengine 驱动失败,请检查 pom.xml 中 com.taosdata.jdbc 版本是否存在以及可用 !!!");
154+
// }
155+
//
156+
// try { //加载驱动程序
157+
// Log.d(TAG, "尝试加载 NebulaGraph 驱动 <<<<<<<<<<<<<<<<<<<<< ");
158+
// Class.forName("com.vesoft.nebula.jdbc.impl.NebulaDriver");
159+
// Log.d(TAG, "成功加载 NebulaGraph 驱动!>>>>>>>>>>>>>>>>>>>>> ");
160+
// } catch (ClassNotFoundException e) {
161+
// e.printStackTrace();
162+
// Log.e(TAG, "加载 NebulaGraph 驱动失败,请检查 pom.xml 中 org.nebula-contrib 版本是否存在以及可用 !!!");
163+
// }
165164

166165
// APIJSON 配置 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
167166

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoSQLConfig.java

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,9 @@ public String getDBVersion() {
157157
if (isDb2()) {
158158
return "11.5"; //TODO 改成你自己的
159159
}
160+
if (isDameng()) {
161+
return "8.1.2.141"; //TODO 改成你自己的
162+
}
160163
if (isTDengine()) {
161164
return "2.6.0.8"; //TODO 改成你自己的
162165
}
@@ -191,11 +194,14 @@ public String getDBUri() {
191194
if (isDb2()) {
192195
return "jdbc:db2://localhost:50000/BLUDB"; //TODO 改成你自己的
193196
}
197+
if (isDameng()) {
198+
return "jdbc:dm://localhost:5236"; //TODO 改成你自己的
199+
}
194200
if (isTDengine()) {
195201
// return "jdbc:TAOS://localhost:6030"; //TODO 改成你自己的
196202
return "jdbc:TAOS-RS://localhost:6041"; //TODO 改成你自己的
197203
}
198-
return null;
204+
return "";
199205
}
200206

201207
@JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加
@@ -216,10 +222,13 @@ public String getDBAccount() {
216222
if (isDb2()) {
217223
return "db2admin"; //TODO 改成你自己的
218224
}
225+
if (isDameng()) {
226+
return "SYSDBA";
227+
}
219228
if (isTDengine()) {
220229
return "root"; //TODO 改成你自己的
221230
}
222-
return null;
231+
return "";
223232
}
224233

225234
@JSONField(serialize = false) // 不在日志打印 账号/密码 等敏感信息,用了 UnitAuto 则一定要加
@@ -240,10 +249,13 @@ public String getDBPassword() {
240249
if (isDb2()) {
241250
return "123"; //TODO 改成你自己的
242251
}
252+
if (isDameng()) {
253+
return "SYSDBA";
254+
}
243255
if (isTDengine()) {
244256
return "taosdata"; //TODO 改成你自己的
245257
}
246-
return null;
258+
return "";
247259
}
248260

249261
// 取消注释后,默认的 APIJSON 配置表会由业务表所在 数据库类型 database 和 数据库模式 schema 改为自定义的

0 commit comments

Comments
 (0)