Browse Source

Merge branch '2.2.x' into 2.3.x

See gh-23203
pull/23585/head
Andy Wilkinson 5 years ago
parent
commit
86fc4dea2a
  1. 18
      spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jdbc/EmbeddedDatabaseConnection.java

18
spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jdbc/EmbeddedDatabaseConnection.java

@ -59,17 +59,25 @@ public enum EmbeddedDatabaseConnection { @@ -59,17 +59,25 @@ public enum EmbeddedDatabaseConnection {
/**
* HSQL Database Connection.
*/
HSQL(EmbeddedDatabaseType.HSQL, DatabaseDriver.HSQLDB.getDriverClassName(), "jdbc:hsqldb:mem:%s");
HSQL(EmbeddedDatabaseType.HSQL, DatabaseDriver.HSQLDB.getDriverClassName(), "org.hsqldb.jdbcDriver",
"jdbc:hsqldb:mem:%s");
private final EmbeddedDatabaseType type;
private final String driverClass;
private final String alternativeDriverClass;
private final String url;
EmbeddedDatabaseConnection(EmbeddedDatabaseType type, String driverClass, String url) {
this(type, driverClass, null, url);
}
EmbeddedDatabaseConnection(EmbeddedDatabaseType type, String driverClass, String fallbackDriverClass, String url) {
this.type = type;
this.driverClass = driverClass;
this.alternativeDriverClass = fallbackDriverClass;
this.url = url;
}
@ -106,8 +114,12 @@ public enum EmbeddedDatabaseConnection { @@ -106,8 +114,12 @@ public enum EmbeddedDatabaseConnection {
* @return true if the driver class is one of the embedded types
*/
public static boolean isEmbedded(String driverClass) {
return driverClass != null && (driverClass.equals(HSQL.driverClass) || driverClass.equals(H2.driverClass)
|| driverClass.equals(DERBY.driverClass));
return driverClass != null
&& (matches(HSQL, driverClass) || matches(H2, driverClass) || matches(DERBY, driverClass));
}
private static boolean matches(EmbeddedDatabaseConnection candidate, String driverClass) {
return driverClass.equals(candidate.driverClass) || driverClass.equals(candidate.alternativeDriverClass);
}
/**

Loading…
Cancel
Save