Skip to content

Commit f9d50ee

Browse files
mdeinumsnicoll
authored andcommitted
Prefer JdbcTransactionManager over DataSourceTransactionManager
Spring 5.3 introduced the JdbcTransactionManager with exception translation on commit and rollback. This commit updates the auto-configuration to use this implementation rather than DataSourceTransactionManager. See gh-23672
1 parent 70ed778 commit f9d50ee

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/DataSourceTransactionManagerAutoConfiguration.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,11 @@
3030
import org.springframework.context.annotation.Configuration;
3131
import org.springframework.core.Ordered;
3232
import org.springframework.jdbc.core.JdbcTemplate;
33-
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
33+
import org.springframework.jdbc.support.JdbcTransactionManager;
3434
import org.springframework.transaction.TransactionManager;
3535

3636
/**
37-
* {@link EnableAutoConfiguration Auto-configuration} for
38-
* {@link DataSourceTransactionManager}.
37+
* {@link EnableAutoConfiguration Auto-configuration} for {@link JdbcTransactionManager}.
3938
*
4039
* @author Dave Syer
4140
* @author Stephane Nicoll
@@ -55,9 +54,9 @@ static class DataSourceTransactionManagerConfiguration {
5554

5655
@Bean
5756
@ConditionalOnMissingBean(TransactionManager.class)
58-
DataSourceTransactionManager transactionManager(DataSource dataSource,
57+
JdbcTransactionManager transactionManager(DataSource dataSource,
5958
ObjectProvider<TransactionManagerCustomizers> transactionManagerCustomizers) {
60-
DataSourceTransactionManager transactionManager = new DataSourceTransactionManager(dataSource);
59+
JdbcTransactionManager transactionManager = new JdbcTransactionManager(dataSource);
6160
transactionManagerCustomizers.ifAvailable((customizers) -> customizers.customize(transactionManager));
6261
return transactionManager;
6362
}

0 commit comments

Comments
 (0)