From 54ad966d0b142c97fc659263b51d1ea5d7b5c7c6 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期五, 28 五月 2021 16:17:08 +0800 Subject: [PATCH] 修改bug --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/helper/sensitive/SensitiveInterceptor.java | 20 ++++++++++++-------- 1 files changed, 12 insertions(+), 8 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/helper/sensitive/SensitiveInterceptor.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/helper/sensitive/SensitiveInterceptor.java index 40901c1..113e35e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/helper/sensitive/SensitiveInterceptor.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/helper/sensitive/SensitiveInterceptor.java @@ -11,6 +11,7 @@ import org.apache.ibatis.reflection.MetaObject; import org.apache.ibatis.reflection.SystemMetaObject; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; import java.lang.reflect.Field; @@ -29,6 +30,7 @@ @Slf4j @ConditionalOnProperty(value = "domain.sensitive", havingValue = "true") @Component +@Order(120) public class SensitiveInterceptor implements Interceptor { @SuppressWarnings("unchecked") @Override @@ -42,14 +44,16 @@ private void sensitive(Object source) { - // 拿到返回值类型 - Class<?> sourceClass = source.getClass(); - // 初始化返回值类型的 MetaObject - MetaObject metaObject = SystemMetaObject.forObject(source); - // 捕捉到属性上的标记注解 @Sensitive 并进行对应的脱敏处理 - Stream.of(sourceClass.getDeclaredFields()) - .filter(field -> field.isAnnotationPresent(Sensitive.class)) - .forEach(field -> doSensitive(metaObject, field)); + if(source!=null) { + // 拿到返回值类型 + Class<?> sourceClass = source.getClass(); + // 初始化返回值类型的 MetaObject + MetaObject metaObject = SystemMetaObject.forObject(source); + // 捕捉到属性上的标记注解 @Sensitive 并进行对应的脱敏处理 + Stream.of(sourceClass.getDeclaredFields()) + .filter(field -> field.isAnnotationPresent(Sensitive.class)) + .forEach(field -> doSensitive(metaObject, field)); + } } -- Gitblit v1.7.1