From 19ca4d4eaecbce0e2ba1fe5234f16eef004159fe Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Fri, 24 Jan 2014 18:19:20 +0000 Subject: [PATCH] Add destroyMethods to DataSources --- .../autoconfigure/jdbc/CommonsDataSourceConfiguration.java | 2 +- .../boot/autoconfigure/jdbc/EmbeddedDatabaseConnection.java | 3 ++- .../boot/autoconfigure/jdbc/TomcatDataSourceConfiguration.java | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/CommonsDataSourceConfiguration.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/CommonsDataSourceConfiguration.java index 9e6fea594ba..67e30682cdd 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/CommonsDataSourceConfiguration.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/CommonsDataSourceConfiguration.java @@ -47,7 +47,7 @@ public class CommonsDataSourceConfiguration extends AbstractDataSourceConfigurat setInitialSize(0); } - @Bean + @Bean(destroyMethod = "close") public DataSource dataSource() { logger.info("Hint: using Commons DBCP BasicDataSource. It's going to work, " + "but the Tomcat DataSource is more reliable."); diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/EmbeddedDatabaseConnection.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/EmbeddedDatabaseConnection.java index 8cae153e9d5..da1134efc43 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/EmbeddedDatabaseConnection.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/EmbeddedDatabaseConnection.java @@ -36,7 +36,8 @@ public enum EmbeddedDatabaseConnection { /** * H2 Database Connection. */ - H2(EmbeddedDatabaseType.H2, "org.h2.Driver", "jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1"), + H2(EmbeddedDatabaseType.H2, "org.h2.Driver", + "jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE"), /** * Derby Database Connection. diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/TomcatDataSourceConfiguration.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/TomcatDataSourceConfiguration.java index 85d30d0128f..0f084258d42 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/TomcatDataSourceConfiguration.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/TomcatDataSourceConfiguration.java @@ -34,7 +34,7 @@ public class TomcatDataSourceConfiguration extends AbstractDataSourceConfigurati private org.apache.tomcat.jdbc.pool.DataSource pool; - @Bean + @Bean(destroyMethod = "close") public DataSource dataSource() { this.pool = new org.apache.tomcat.jdbc.pool.DataSource(); this.pool.setDriverClassName(getDriverClassName());