Skip to content

Commit 5cb2220

Browse files
committed
修复common初始化时报PlatformTransactionManager不存在
1 parent 84e844f commit 5cb2220

1 file changed

Lines changed: 25 additions & 7 deletions

File tree

common/src/main/java/org/bekit/common/boot/CommonConfiguration.java

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
import org.bekit.common.transaction.support.EmptyTransactionManager;
1313
import org.bekit.common.transaction.support.SpringTransactionManager;
1414
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
15+
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
1516
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
17+
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;
1618
import org.springframework.context.annotation.Configuration;
1719
import org.springframework.context.annotation.Import;
1820
import org.springframework.transaction.PlatformTransactionManager;
@@ -29,21 +31,37 @@ public class CommonConfiguration {
2931
@ConditionalOnMissingBean(TransactionManager.class)
3032
public static class TransactionManagerConfiguration {
3133
/**
32-
* Spring事务管理器配置
34+
* PlatformTransactionManager存在
3335
*/
3436
@Configuration
35-
@ConditionalOnBean(PlatformTransactionManager.class)
36-
@Import(SpringTransactionManager.class)
37-
public static class SpringTransactionManagerConfiguration {
37+
@ConditionalOnClass(PlatformTransactionManager.class)
38+
public static class PlatformTransactionManagerClassExists {
39+
/**
40+
* Spring事务管理器配置
41+
*/
42+
@Configuration
43+
@ConditionalOnBean(PlatformTransactionManager.class)
44+
@Import(SpringTransactionManager.class)
45+
public static class SpringTransactionManagerConfiguration {
46+
}
47+
48+
/**
49+
* 空事务管理器配置
50+
*/
51+
@Configuration
52+
@ConditionalOnMissingBean(PlatformTransactionManager.class)
53+
@Import(EmptyTransactionManager.class)
54+
public static class EmptyTransactionManagerConfiguration {
55+
}
3856
}
3957

4058
/**
41-
* 空事务管理器配置
59+
* PlatformTransactionManager不存在
4260
*/
4361
@Configuration
44-
@ConditionalOnMissingBean(PlatformTransactionManager.class)
62+
@ConditionalOnMissingClass("org.springframework.transaction.PlatformTransactionManager")
4563
@Import(EmptyTransactionManager.class)
46-
public static class EmptyTransactionManagerConfiguration {
64+
public static class PlatformTransactionManagerClassNotExists {
4765
}
4866
}
4967
}

0 commit comments

Comments
 (0)