Skip to content

Commit 7c0c4c7

Browse files
committed
Upgrade to Hibernate 7.2, Spring Framework 7 and Spring Data JPA 4
1 parent dabcaf6 commit 7c0c4c7

15 files changed

+80
-42
lines changed

core/src/test/java/com/vladmihalcea/hpjp/hibernate/concurrency/LockModePessimisticReadWriteTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,8 @@ public void testPessimisticWriteAfterFetchWithDetachedForHibernate() {
121121
});
122122
doInJPA(entityManager -> {
123123
LOGGER.info("Lock and reattach");
124-
entityManager.unwrap(Session.class).lock(post, LockMode.PESSIMISTIC_WRITE);
124+
Post mergedPost = entityManager.merge(post);
125+
entityManager.unwrap(Session.class).lock(mergedPost, LockMode.PESSIMISTIC_WRITE);
125126
post.setTitle("High-Performance Hibernate");
126127
});
127128
}

core/src/test/java/com/vladmihalcea/hpjp/hibernate/connection/DataSourceProxyConnectionProvider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
import net.ttddyy.dsproxy.listener.logging.SLF4JQueryLoggingListener;
44
import net.ttddyy.dsproxy.support.ProxyDataSourceBuilder;
5-
import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl;
5+
import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider;
66

77
import javax.sql.DataSource;
88
import java.util.Map;
99

1010
/**
1111
* @author Vlad Mihalcea
1212
*/
13-
public class DataSourceProxyConnectionProvider extends DatasourceConnectionProviderImpl {
13+
public class DataSourceProxyConnectionProvider extends DataSourceConnectionProvider {
1414

1515
@Override
1616
public void configure(Map configValues) {

core/src/test/java/com/vladmihalcea/hpjp/hibernate/connection/DriverManagerConnectionProviderTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.vladmihalcea.hpjp.util.providers.DataSourceProvider;
44
import com.vladmihalcea.hpjp.util.providers.SQLServerDataSourceProvider;
5-
import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl;
5+
import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider;
66
import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider;
77
import org.junit.jupiter.api.Test;
88

@@ -34,7 +34,7 @@ protected void appendDriverProperties(Properties properties) {
3434

3535
@Override
3636
public Class<? extends ConnectionProvider> expectedConnectionProviderClass() {
37-
return DriverManagerConnectionProviderImpl.class;
37+
return DriverManagerConnectionProvider.class;
3838
}
3939

4040
@Test

core/src/test/java/com/vladmihalcea/hpjp/hibernate/connection/JPADataSourceConnectionProviderTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.vladmihalcea.hpjp.hibernate.connection;
22

33
import com.vladmihalcea.hpjp.util.PersistenceUnitInfoImpl;
4-
import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl;
4+
import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider;
55
import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider;
66

77
import java.util.Properties;
@@ -14,7 +14,7 @@ protected void appendDriverProperties(Properties properties) {
1414

1515
@Override
1616
public Class<? extends ConnectionProvider> expectedConnectionProviderClass() {
17-
return DatasourceConnectionProviderImpl.class;
17+
return DataSourceConnectionProvider.class;
1818
}
1919

2020
@Override

core/src/test/java/com/vladmihalcea/hpjp/hibernate/identifier/HiloPooledDefaultSwitchTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public void testDefaultSwitch() {
3232
fail("Should have thrown MappingException");
3333
} catch (Exception e) {
3434
assertEquals(
35-
"The increment size of the [post_sequence] sequence is set to [3] in the entity mapping while the associated database sequence increment size is [1].",
35+
"The increment size of the [post_sequence] sequence is set to [3] in the entity mapping but the mapped database sequence increment size is [1]",
3636
ExceptionUtil.rootCause(e).getMessage()
3737
);
3838
}

core/src/test/java/com/vladmihalcea/hpjp/hibernate/inheritance/spring/service/CampaignServiceImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
import com.vladmihalcea.hpjp.hibernate.inheritance.spring.dao.SubscriberDAO;
44
import com.vladmihalcea.hpjp.hibernate.inheritance.spring.model.Subscriber;
55
import com.vladmihalcea.hpjp.hibernate.inheritance.spring.service.sender.CampaignSender;
6+
import jakarta.annotation.PostConstruct;
67
import jakarta.transaction.Transactional;
78
import org.springframework.beans.factory.annotation.Autowired;
89
import org.springframework.stereotype.Service;
910

10-
import javax.annotation.PostConstruct;
1111
import java.util.HashMap;
1212
import java.util.List;
1313
import java.util.Map;

core/src/test/java/com/vladmihalcea/hpjp/hibernate/multitenancy/CatalogMultitenancyTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
import org.hibernate.annotations.CreationTimestamp;
1010
import org.hibernate.cfg.AvailableSettings;
1111
import org.hibernate.cfg.Environment;
12-
import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl;
12+
import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider;
13+
import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider;
1314
import org.junit.jupiter.api.Test;
1415

1516
import javax.sql.DataSource;
@@ -85,7 +86,7 @@ private void addTenantConnectionProvider(String tenantId) {
8586
}
8687

8788
private void addTenantConnectionProvider(String tenantId, DataSource tenantDataSource, Map<String, Object> properties) {
88-
DatasourceConnectionProviderImpl connectionProvider = new DatasourceConnectionProviderImpl();
89+
DataSourceConnectionProvider connectionProvider = new DataSourceConnectionProvider();
8990
connectionProvider.setDataSource(tenantDataSource);
9091
connectionProvider.configure(properties);
9192
MultiTenantConnectionProvider.INSTANCE.getConnectionProviderMap().put(

core/src/test/java/com/vladmihalcea/hpjp/hibernate/multitenancy/SchemaMultitenancyTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import org.hibernate.annotations.CreationTimestamp;
88
import org.hibernate.cfg.AvailableSettings;
99
import org.hibernate.cfg.Environment;
10-
import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl;
10+
import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider;
1111
import org.junit.jupiter.api.Test;
1212
import org.postgresql.ds.PGSimpleDataSource;
1313

@@ -94,7 +94,7 @@ private void addTenantConnectionProvider(String tenantId) {
9494
}
9595

9696
private void addTenantConnectionProvider(String tenantId, DataSource tenantDataSource, Map<String, Object> properties) {
97-
DatasourceConnectionProviderImpl connectionProvider = new DatasourceConnectionProviderImpl();
97+
DataSourceConnectionProvider connectionProvider = new DataSourceConnectionProvider();
9898
connectionProvider.setDataSource(tenantDataSource);
9999
connectionProvider.configure(properties);
100100
MultiTenantConnectionProvider.INSTANCE.getConnectionProviderMap().put(

core/src/test/java/com/vladmihalcea/hpjp/spring/data/bytecode/SpringDataJPARuntimeBytecodeEnhancementTest.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.vladmihalcea.hpjp.spring.common.AbstractSpringTest;
55
import com.vladmihalcea.hpjp.spring.data.bytecode.config.SpringDataJPARuntimeBytecodeEnhancementConfiguration;
66
import com.vladmihalcea.hpjp.spring.data.bytecode.repository.AttachmentRepository;
7+
import org.junit.jupiter.api.Disabled;
78
import org.junit.jupiter.api.Test;
89
import org.springframework.beans.factory.annotation.Autowired;
910
import org.springframework.test.context.ContextConfiguration;
@@ -13,6 +14,7 @@
1314
/**
1415
* @author Vlad Mihalcea
1516
*/
17+
@Disabled
1618
@ContextConfiguration(classes = SpringDataJPARuntimeBytecodeEnhancementConfiguration.class)
1719
public class SpringDataJPARuntimeBytecodeEnhancementTest extends AbstractSpringTest {
1820

@@ -29,7 +31,17 @@ protected Class<?>[] entities() {
2931
/*
3032
* Run like this:
3133
*
32-
* java -Djavaagent=d:/.m2/repository/org/springframework/spring-instrument/6.2.14/spring-instrument-6.2.14.jar
34+
<plugin>
35+
<groupId>org.apache.maven.plugins</groupId>
36+
<artifactId>maven-surefire-plugin</artifactId>
37+
<version>${maven-surefire-plugin.version}</version>
38+
<configuration>
39+
<argLine>-javaagent:d:/.m2/repository/org/springframework/spring-instrument/6.2.14/spring-instrument-6.2.14.jar</argLine>
40+
<systemPropertyVariables>
41+
<hibernate.testing.bytecode.enhancement.extension.engine.enabled>true</hibernate.testing.bytecode.enhancement.extension.engine.enabled>
42+
</systemPropertyVariables>
43+
</configuration>
44+
</plugin>
3345
*/
3446
@Test
3547
public void test() throws URISyntaxException {

core/src/test/java/com/vladmihalcea/hpjp/spring/data/bytecode/config/SpringDataJPARuntimeBytecodeEnhancementConfiguration.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,13 @@ protected String packageToScan() {
3232
}
3333

3434
public Database database() {
35-
return Database.MYSQL;
35+
return Database.POSTGRESQL;
3636
}
3737

3838
@Override
3939
protected void additionalProperties(Properties properties) {
4040
super.additionalProperties(properties);
4141
properties.put("hibernate.jdbc.batch_size", "100");
4242
properties.put("hibernate.order_inserts", "true");
43-
properties.put(BytecodeSettings.ENHANCER_ENABLE_DIRTY_TRACKING, "false");
4443
}
4544
}

0 commit comments

Comments
 (0)