mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
Resolve the DB2 driver from JDBC URL
This commit is contained in:
@@ -25,7 +25,9 @@ public interface JdbcConstants {
|
||||
|
||||
String DB2 = "db2";
|
||||
|
||||
String DB2_DRIVER = "com.ibm.db2.jcc.DB2Driver";
|
||||
String DB2_DRIVER = "com.ibm.db2.jcc.DB2Driver"; // Type4
|
||||
String DB2_DRIVER2 = "COM.ibm.db2.jdbc.app.DB2Driver"; // Type2
|
||||
String DB2_DRIVER3 = "COM.ibm.db2.jdbc.net.DB2Driver"; // Type3
|
||||
|
||||
String POSTGRESQL = "postgresql";
|
||||
String POSTGRESQL_DRIVER = "org.postgresql.Driver";
|
||||
|
||||
@@ -436,7 +436,21 @@ public final class JdbcUtils implements JdbcConstants {
|
||||
} else if (rawUrl.startsWith("jdbc:hsqldb:")) {
|
||||
return "org.hsqldb.jdbcDriver";
|
||||
} else if (rawUrl.startsWith("jdbc:db2:")) {
|
||||
return DB2_DRIVER;
|
||||
// Resolve the DB2 driver from JDBC URL
|
||||
// Type2 COM.ibm.db2.jdbc.app.DB2Driver, url = jdbc:db2:databasename
|
||||
// Type3 COM.ibm.db2.jdbc.net.DB2Driver, url = jdbc:db2:ServerIP:6789:databasename
|
||||
// Type4 8.1+ com.ibm.db2.jcc.DB2Driver, url = jdbc:db2://ServerIP:50000/databasename
|
||||
String prefix = "jdbc:db2:";
|
||||
if (rawUrl.startsWith(prefix + "//")) { // Type4
|
||||
return DB2_DRIVER; // "com.ibm.db2.jcc.DB2Driver";
|
||||
} else {
|
||||
String suffix = rawUrl.substring(prefix.length());
|
||||
if (suffix.indexOf(':') > 0) { // Type3
|
||||
return DB2_DRIVER3; // COM.ibm.db2.jdbc.net.DB2Driver
|
||||
} else { // Type2
|
||||
return DB2_DRIVER2; // COM.ibm.db2.jdbc.app.DB2Driver
|
||||
}
|
||||
}
|
||||
} else if (rawUrl.startsWith("jdbc:sqlite:")) {
|
||||
return SQLITE_DRIVER;
|
||||
} else if (rawUrl.startsWith("jdbc:ingres:")) {
|
||||
|
||||
Reference in New Issue
Block a user