From dd7177ef063856c9654b595fca6b6a6c0a6015d5 Mon Sep 17 00:00:00 2001 From: Carter Date: Tue, 9 Mar 2021 22:02:44 +0800 Subject: [PATCH 1/2] feat(plugin-order): Support interceptor sorting during auto config SqlSessionFactory --- .../spring/boot/autoconfigure/MybatisAutoConfiguration.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java index 0778d34e..9a792b08 100644 --- a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java +++ b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java @@ -56,6 +56,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; +import org.springframework.core.annotation.AnnotationAwareOrderComparator; import org.springframework.core.io.Resource; import org.springframework.core.io.ResourceLoader; import org.springframework.core.type.AnnotationMetadata; @@ -140,6 +141,7 @@ public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Excepti factory.setConfigurationProperties(this.properties.getConfigurationProperties()); } if (!ObjectUtils.isEmpty(this.interceptors)) { + AnnotationAwareOrderComparator.sort(this.interceptors); factory.setPlugins(this.interceptors); } if (this.databaseIdProvider != null) { From 575079576fb578d1796ed68aeca30d33abc65a6d Mon Sep 17 00:00:00 2001 From: Carter Date: Thu, 11 Mar 2021 09:31:23 +0800 Subject: [PATCH 2/2] feat(plugin-order): add comment to trigger CI --- .../spring/boot/autoconfigure/MybatisAutoConfiguration.java | 1 + 1 file changed, 1 insertion(+) diff --git a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java index 9a792b08..600ae406 100644 --- a/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java +++ b/mybatis-spring-boot-autoconfigure/src/main/java/org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.java @@ -141,6 +141,7 @@ public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Excepti factory.setConfigurationProperties(this.properties.getConfigurationProperties()); } if (!ObjectUtils.isEmpty(this.interceptors)) { + // sort interceptors by order AnnotationAwareOrderComparator.sort(this.interceptors); factory.setPlugins(this.interceptors); }