Browse Source

Merge pull request #225 from xuing/master

修复某些情况下ContextHolder的NPE异常
芋道源码 2 years ago
parent
commit
d430f6cb26

+ 2 - 2
yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission/core/db/DataPermissionDatabaseInterceptor.java

@@ -539,11 +539,11 @@ public class DataPermissionDatabaseInterceptor extends JsqlParserSupport impleme
         /**
          * 该 {@link MappedStatement} 对应的规则
          */
-        private static final ThreadLocal<List<DataPermissionRule>> RULES = new TransmittableThreadLocal<>();
+        private static final ThreadLocal<List<DataPermissionRule>> RULES = ThreadLocal.withInitial(Collections::emptyList);
         /**
          * SQL 是否进行重写
          */
-        private static final ThreadLocal<Boolean> REWRITE = new TransmittableThreadLocal<>();
+        private static final ThreadLocal<Boolean> REWRITE = ThreadLocal.withInitial(() -> Boolean.FALSE);
 
         public static void init(List<DataPermissionRule> rules) {
             RULES.set(rules);