Skip to content

Commit 94882a2

Browse files
committed
fixup! Create spring-boot-jpa module
1 parent eaaaf88 commit 94882a2

File tree

4 files changed

+27
-55
lines changed

4 files changed

+27
-55
lines changed

spring-boot-project/spring-boot-flyway/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ dependencies {
1818
optional("org.flywaydb:flyway-database-postgresql")
1919
optional("org.flywaydb:flyway-sqlserver")
2020

21-
testImplementation(project(":spring-boot-project:spring-boot-jpa"))
2221
testImplementation(project(":spring-boot-project:spring-boot-test"))
2322
testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support"))
2423
testImplementation("jakarta.persistence:jakarta.persistence-api")

spring-boot-project/spring-boot-flyway/src/test/java/org/springframework/boot/flyway/autoconfigure/FlywayAutoConfigurationTests.java

+10-50
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,10 @@
6767
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration.PostgresqlFlywayConfigurationCustomizer;
6868
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration.SqlServerFlywayConfigurationCustomizer;
6969
import org.springframework.boot.jdbc.DataSourceBuilder;
70-
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
7170
import org.springframework.boot.jdbc.SchemaManagement;
7271
import org.springframework.boot.jdbc.autoconfigure.DataSourceProperties;
7372
import org.springframework.boot.jdbc.autoconfigure.EmbeddedDataSourceConfiguration;
7473
import org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails;
75-
import org.springframework.boot.jpa.EntityManagerFactoryBuilder;
7674
import org.springframework.boot.test.context.FilteredClassLoader;
7775
import org.springframework.boot.test.context.assertj.AssertableApplicationContext;
7876
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
@@ -1065,10 +1063,11 @@ FlywayMigrationInitializer customFlywayMigrationInitializer(Flyway flyway) {
10651063

10661064
@Bean
10671065
LocalContainerEntityManagerFactoryBean entityManagerFactoryBean(DataSource dataSource) {
1068-
return new EntityManagerFactoryBuilder(new HibernateJpaVendorAdapter(), (ds) -> configureJpaProperties(),
1069-
null)
1070-
.dataSource(dataSource)
1071-
.build();
1066+
LocalContainerEntityManagerFactoryBean localContainerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
1067+
localContainerEntityManagerFactoryBean.setDataSource(dataSource);
1068+
localContainerEntityManagerFactoryBean.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
1069+
localContainerEntityManagerFactoryBean.setJpaPropertyMap(configureJpaProperties());
1070+
return localContainerEntityManagerFactoryBean;
10721071
}
10731072

10741073
}
@@ -1089,50 +1088,11 @@ Flyway customFlyway() {
10891088

10901089
@Bean
10911090
LocalContainerEntityManagerFactoryBean entityManagerFactoryBean() {
1092-
return new EntityManagerFactoryBuilder(new HibernateJpaVendorAdapter(),
1093-
(datasource) -> configureJpaProperties(), null)
1094-
.dataSource(this.dataSource)
1095-
.build();
1096-
}
1097-
1098-
}
1099-
1100-
@Configuration(proxyBeanMethods = false)
1101-
static class JpaWithMultipleDataSourcesConfiguration {
1102-
1103-
@Bean
1104-
@Primary
1105-
DataSource normalDataSource() {
1106-
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseConnection.HSQLDB.getType())
1107-
.generateUniqueName(true)
1108-
.build();
1109-
}
1110-
1111-
@Bean
1112-
@Primary
1113-
LocalContainerEntityManagerFactoryBean normalEntityManagerFactory(EntityManagerFactoryBuilder builder,
1114-
DataSource normalDataSource) {
1115-
Map<String, Object> properties = new HashMap<>();
1116-
properties.put("configured", "normal");
1117-
properties.put("hibernate.transaction.jta.platform", NoJtaPlatform.INSTANCE);
1118-
return builder.dataSource(normalDataSource).properties(properties).build();
1119-
}
1120-
1121-
@Bean
1122-
@FlywayDataSource
1123-
DataSource flywayDataSource() {
1124-
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseConnection.HSQLDB.getType())
1125-
.generateUniqueName(true)
1126-
.build();
1127-
}
1128-
1129-
@Bean
1130-
LocalContainerEntityManagerFactoryBean flywayEntityManagerFactory(EntityManagerFactoryBuilder builder,
1131-
@FlywayDataSource DataSource flywayDataSource) {
1132-
Map<String, Object> properties = new HashMap<>();
1133-
properties.put("configured", "flyway");
1134-
properties.put("hibernate.transaction.jta.platform", NoJtaPlatform.INSTANCE);
1135-
return builder.dataSource(flywayDataSource).properties(properties).build();
1091+
LocalContainerEntityManagerFactoryBean localContainerEntityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
1092+
localContainerEntityManagerFactoryBean.setDataSource(this.dataSource);
1093+
localContainerEntityManagerFactoryBean.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
1094+
localContainerEntityManagerFactoryBean.setJpaPropertyMap(configureJpaProperties());
1095+
return localContainerEntityManagerFactoryBean;
11361096
}
11371097

11381098
}

spring-boot-project/spring-boot-jpa/build.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ dependencies {
2020
optional("jakarta.servlet:jakarta.servlet-api")
2121
optional("org.springframework:spring-webmvc")
2222

23-
testImplementation(project(":spring-boot-project:spring-boot-autoconfigure-all"))
2423
testImplementation(project(":spring-boot-project:spring-boot-flyway"))
2524
testImplementation(project(":spring-boot-project:spring-boot-liquibase"))
2625
testImplementation(project(":spring-boot-project:spring-boot-test"))

spring-boot-project/spring-boot-jpa/src/test/java/org/springframework/boot/jpa/autoconfigure/hibernate/Hibernate2ndLevelCacheIntegrationTests.java

+17-3
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,18 @@
1616

1717
package org.springframework.boot.jpa.autoconfigure.hibernate;
1818

19+
import javax.cache.CacheManager;
20+
import javax.cache.Caching;
21+
1922
import org.ehcache.jsr107.EhcacheCachingProvider;
2023
import org.junit.jupiter.api.Test;
2124

2225
import org.springframework.boot.autoconfigure.AutoConfigurations;
23-
import org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration;
2426
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
2527
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2628
import org.springframework.cache.annotation.EnableCaching;
29+
import org.springframework.cache.jcache.JCacheCacheManager;
30+
import org.springframework.context.annotation.Bean;
2731
import org.springframework.context.annotation.Configuration;
2832

2933
import static org.assertj.core.api.Assertions.assertThat;
@@ -36,8 +40,8 @@
3640
class Hibernate2ndLevelCacheIntegrationTests {
3741

3842
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
39-
.withConfiguration(AutoConfigurations.of(CacheAutoConfiguration.class, DataSourceAutoConfiguration.class,
40-
HibernateJpaAutoConfiguration.class))
43+
.withConfiguration(
44+
AutoConfigurations.of(DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class))
4145
.withUserConfiguration(TestConfiguration.class);
4246

4347
@Test
@@ -54,6 +58,16 @@ void hibernate2ndLevelCacheWithJCacheAndEhCache() {
5458
@EnableCaching
5559
static class TestConfiguration {
5660

61+
@Bean
62+
CacheManager cacheManager() {
63+
return Caching.getCachingProvider(EhcacheCachingProvider.class.getName()).getCacheManager();
64+
}
65+
66+
@Bean
67+
JCacheCacheManager jcacheCacheManager(CacheManager cacheManager) {
68+
return new JCacheCacheManager(cacheManager);
69+
}
70+
5771
}
5872

5973
}

0 commit comments

Comments
 (0)