diff --git a/settings.gradle b/settings.gradle index 57378099f7..c65b7acceb 100644 --- a/settings.gradle +++ b/settings.gradle @@ -55,6 +55,7 @@ include "spring-boot-project:spring-boot-couchbase" include "spring-boot-project:spring-boot-data-cassandra" include "spring-boot-project:spring-boot-data-couchbase" include "spring-boot-project:spring-boot-data-elasticsearch" +include "spring-boot-project:spring-boot-data-jdbc" include "spring-boot-project:spring-boot-data-jpa" include "spring-boot-project:spring-boot-data-ldap" include "spring-boot-project:spring-boot-data-mongodb" diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 704b3a6f96..cebc60126d 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -19,12 +19,6 @@ "description": "Whether to enable the PersistenceExceptionTranslationPostProcessor.", "defaultValue": true }, - { - "name": "spring.data.jdbc.repositories.enabled", - "type": "java.lang.Boolean", - "description": "Whether to enable JDBC repositories.", - "defaultValue": true - }, { "name": "spring.data.r2dbc.repositories.enabled", "type": "java.lang.Boolean", diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 3c815bdd0f..fe0a17515c 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,7 +1,6 @@ org.springframework.boot.autoconfigure.aop.AopAutoConfiguration org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration org.springframework.boot.autoconfigure.dao.PersistenceExceptionTranslationAutoConfiguration -org.springframework.boot.autoconfigure.data.jdbc.JdbcRepositoriesAutoConfiguration org.springframework.boot.autoconfigure.data.r2dbc.R2dbcDataAutoConfiguration org.springframework.boot.autoconfigure.data.r2dbc.R2dbcRepositoriesAutoConfiguration org.springframework.boot.autoconfigure.data.rest.RepositoryRestMvcAutoConfiguration diff --git a/spring-boot-project/spring-boot-data-jdbc/build.gradle b/spring-boot-project/spring-boot-data-jdbc/build.gradle new file mode 100644 index 0000000000..9a12b3df2d --- /dev/null +++ b/spring-boot-project/spring-boot-data-jdbc/build.gradle @@ -0,0 +1,24 @@ +plugins { + id "java-library" + id "org.springframework.boot.auto-configuration" + id "org.springframework.boot.configuration-properties" + id "org.springframework.boot.deployed" + id "org.springframework.boot.optional-dependencies" +} + +description = "Spring Boot Data JDBC" + +dependencies { + api(project(":spring-boot-project:spring-boot-jdbc")) + api("org.springframework.data:spring-data-jdbc") + + optional(project(":spring-boot-project:spring-boot-autoconfigure")) + + testImplementation(project(":spring-boot-project:spring-boot-test")) + testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) + testImplementation(testFixtures(project(":spring-boot-project:spring-boot-autoconfigure"))) + + testRuntimeOnly("ch.qos.logback:logback-classic") + testRuntimeOnly("com.h2database:h2") + testRuntimeOnly("com.zaxxer:HikariCP") +} diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDataProperties.java b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDataProperties.java similarity index 95% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDataProperties.java rename to spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDataProperties.java index c581b15228..62dfc91678 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDataProperties.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDataProperties.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; import org.springframework.boot.context.properties.ConfigurationProperties; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDatabaseDialect.java b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDatabaseDialect.java similarity index 97% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDatabaseDialect.java rename to spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDatabaseDialect.java index 86d310fb07..14fb99526a 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcDatabaseDialect.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcDatabaseDialect.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; import org.springframework.data.jdbc.core.dialect.JdbcDb2Dialect; import org.springframework.data.jdbc.core.dialect.JdbcH2Dialect; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfiguration.java b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfiguration.java similarity index 99% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfiguration.java rename to spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfiguration.java index bf23bc8897..f814d4334f 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfiguration.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; import java.util.Optional; import java.util.Set; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesRegistrar.java b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesRegistrar.java similarity index 93% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesRegistrar.java rename to spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesRegistrar.java index cb7ba0a84e..bdbd6a61dd 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesRegistrar.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesRegistrar.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2024 the original author or authors. + * Copyright 2012-2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; import java.lang.annotation.Annotation; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/package-info.java b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/package-info.java similarity index 84% rename from spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/package-info.java rename to spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/package-info.java index 38739ef88a..79bd621cd5 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/main/java/org/springframework/boot/autoconfigure/data/jdbc/package-info.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/java/org/springframework/boot/data/jdbc/autoconfigure/package-info.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,4 +17,4 @@ /** * Auto-configuration for Spring Data JDBC. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; diff --git a/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/additional-spring-configuration-metadata.json new file mode 100644 index 0000000000..5fcc8f8480 --- /dev/null +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -0,0 +1,11 @@ +{ + "groups": [], + "properties": [ + { + "name": "spring.data.jdbc.repositories.enabled", + "type": "java.lang.Boolean", + "description": "Whether to enable JDBC repositories.", + "defaultValue": true + } + ] +} diff --git a/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000000..8594a630c3 --- /dev/null +++ b/spring-boot-project/spring-boot-data-jdbc/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ +org.springframework.boot.data.jdbc.autoconfigure.JdbcRepositoriesAutoConfiguration diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfigurationTests.java b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfigurationTests.java similarity index 97% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfigurationTests.java rename to spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfigurationTests.java index f213d9b454..c87238322d 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/JdbcRepositoriesAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/autoconfigure/JdbcRepositoriesAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc; +package org.springframework.boot.data.jdbc.autoconfigure; import java.util.function.Function; @@ -25,9 +25,9 @@ import org.mockito.Answers; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage; -import org.springframework.boot.autoconfigure.data.empty.EmptyDataPackage; -import org.springframework.boot.autoconfigure.data.jdbc.city.City; -import org.springframework.boot.autoconfigure.data.jdbc.city.CityRepository; +import org.springframework.boot.data.jdbc.domain.city.City; +import org.springframework.boot.data.jdbc.domain.city.CityRepository; +import org.springframework.boot.data.jdbc.domain.empty.EmptyDataPackage; import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration; import org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration; import org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/City.java b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/City.java similarity index 91% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/City.java rename to spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/City.java index 4214dc98d2..188c1f6a99 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/City.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/City.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc.city; +package org.springframework.boot.data.jdbc.domain.city; import org.springframework.data.annotation.Id; import org.springframework.data.relational.core.mapping.Table; diff --git a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/CityRepository.java b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/CityRepository.java similarity index 85% rename from spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/CityRepository.java rename to spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/CityRepository.java index 5a1cd3ab39..aea9d379d1 100644 --- a/spring-boot-project/spring-boot-autoconfigure-all/src/test/java/org/springframework/boot/autoconfigure/data/jdbc/city/CityRepository.java +++ b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/city/CityRepository.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.autoconfigure.data.jdbc.city; +package org.springframework.boot.data.jdbc.domain.city; import org.springframework.data.repository.CrudRepository; diff --git a/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/empty/EmptyDataPackage.java b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/empty/EmptyDataPackage.java new file mode 100644 index 0000000000..c2b4b4d7ac --- /dev/null +++ b/spring-boot-project/spring-boot-data-jdbc/src/test/java/org/springframework/boot/data/jdbc/domain/empty/EmptyDataPackage.java @@ -0,0 +1,21 @@ +/* + * Copyright 2012-2025 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.boot.data.jdbc.domain.empty; + +public class EmptyDataPackage { + +} diff --git a/spring-boot-project/spring-boot-dependencies/build.gradle b/spring-boot-project/spring-boot-dependencies/build.gradle index a67c3fdb2d..5fffadb74f 100644 --- a/spring-boot-project/spring-boot-dependencies/build.gradle +++ b/spring-boot-project/spring-boot-dependencies/build.gradle @@ -1990,6 +1990,7 @@ bom { "spring-boot-data-cassandra", "spring-boot-data-couchbase", "spring-boot-data-elasticsearch", + "spring-boot-data-jdbc", "spring-boot-data-jpa", "spring-boot-data-ldap", "spring-boot-data-mongodb", diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index e9e0f4c68f..a7548e76de 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -71,6 +71,7 @@ dependencies { autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-cassandra", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-couchbase", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-elasticsearch", configuration: "autoConfigurationMetadata")) + autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-jdbc", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-jpa", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-ldap", configuration: "autoConfigurationMetadata")) autoConfiguration(project(path: ":spring-boot-project:spring-boot-data-mongodb", configuration: "autoConfigurationMetadata")) @@ -130,6 +131,7 @@ dependencies { configurationProperties(project(path: ":spring-boot-project:spring-boot-data-cassandra", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-couchbase", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-elasticsearch", configuration: "configurationPropertiesMetadata")) + configurationProperties(project(path: ":spring-boot-project:spring-boot-data-jdbc", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-jpa", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-ldap", configuration: "configurationPropertiesMetadata")) configurationProperties(project(path: ":spring-boot-project:spring-boot-data-neo4j", configuration: "configurationPropertiesMetadata")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle index 8ecfbed5f2..94ee173f58 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle @@ -6,5 +6,5 @@ description = "Starter for using Spring Data JDBC" dependencies { api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc")) - api("org.springframework.data:spring-data-jdbc") + api(project(":spring-boot-project:spring-boot-data-jdbc")) } diff --git a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle index cae850e380..4e6b5aca12 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle @@ -39,6 +39,7 @@ dependencies { optional(project(":spring-boot-project:spring-boot-data-cassandra")) optional(project(":spring-boot-project:spring-boot-data-couchbase")) optional(project(":spring-boot-project:spring-boot-data-elasticsearch")) + optional(project(":spring-boot-project:spring-boot-data-jdbc")) optional(project(":spring-boot-project:spring-boot-data-jpa")) optional(project(":spring-boot-project:spring-boot-data-ldap")) optional(project(":spring-boot-project:spring-boot-data-mongodb")) diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.jdbc.AutoConfigureDataJdbc.imports b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.jdbc.AutoConfigureDataJdbc.imports index e8fa231e70..fa0f7f3ee9 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.jdbc.AutoConfigureDataJdbc.imports +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.test.autoconfigure.data.jdbc.AutoConfigureDataJdbc.imports @@ -1,5 +1,5 @@ # AutoConfigureDataJdbc auto-configuration imports -org.springframework.boot.autoconfigure.data.jdbc.JdbcRepositoriesAutoConfiguration +org.springframework.boot.data.jdbc.autoconfigure.JdbcRepositoriesAutoConfiguration org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration