!518 优化: MyBatisFlexCustomizer支持定义多个

Merge pull request !518 from 生旭鹏/main
This commit is contained in:
Michael Yang 2025-01-07 02:01:54 +00:00 committed by Gitee
commit 4d25f4c222
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -136,7 +136,7 @@ public class MybatisFlexAutoConfiguration implements InitializingBean {
protected final LogicDeleteProcessor logicDeleteProcessor; protected final LogicDeleteProcessor logicDeleteProcessor;
//初始化监听 //初始化监听
protected final MyBatisFlexCustomizer mybatisFlexCustomizer; protected final List<MyBatisFlexCustomizer> mybatisFlexCustomizers;
public MybatisFlexAutoConfiguration(MybatisFlexProperties properties, ObjectProvider<Interceptor[]> interceptorsProvider, public MybatisFlexAutoConfiguration(MybatisFlexProperties properties, ObjectProvider<Interceptor[]> interceptorsProvider,
@ -149,7 +149,7 @@ public class MybatisFlexAutoConfiguration implements InitializingBean {
ObjectProvider<DynamicSchemaProcessor> dynamicSchemaProcessorProvider, ObjectProvider<DynamicSchemaProcessor> dynamicSchemaProcessorProvider,
ObjectProvider<TenantFactory> tenantFactoryProvider, ObjectProvider<TenantFactory> tenantFactoryProvider,
ObjectProvider<LogicDeleteProcessor> logicDeleteProcessorProvider, ObjectProvider<LogicDeleteProcessor> logicDeleteProcessorProvider,
ObjectProvider<MyBatisFlexCustomizer> mybatisFlexCustomizerProvider ObjectProvider<MyBatisFlexCustomizer> mybatisFlexCustomizerProviders
) { ) {
this.properties = properties; this.properties = properties;
this.interceptors = interceptorsProvider.getIfAvailable(); this.interceptors = interceptorsProvider.getIfAvailable();
@ -176,7 +176,7 @@ public class MybatisFlexAutoConfiguration implements InitializingBean {
this.logicDeleteProcessor = logicDeleteProcessorProvider.getIfAvailable(); this.logicDeleteProcessor = logicDeleteProcessorProvider.getIfAvailable();
//初始化监听器 //初始化监听器
this.mybatisFlexCustomizer = mybatisFlexCustomizerProvider.getIfAvailable(); this.mybatisFlexCustomizers = mybatisFlexCustomizerProviders.orderedStream().collect(Collectors.toList());
} }
@Override @Override
@ -215,8 +215,8 @@ public class MybatisFlexAutoConfiguration implements InitializingBean {
} }
//初始化监听器 //初始化监听器
if (mybatisFlexCustomizer != null) { if (mybatisFlexCustomizers != null) {
mybatisFlexCustomizer.customize(FlexGlobalConfig.getDefaultConfig()); mybatisFlexCustomizers.forEach(myBatisFlexCustomizer -> myBatisFlexCustomizer.customize(FlexGlobalConfig.getDefaultConfig()));
} }
} }