From dfe8547ba825d766289a32373f43d950c2a62d91 Mon Sep 17 00:00:00 2001 From: "grq100296@163.com" Date: Tue, 23 Aug 2022 19:57:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=A4=96=E9=83=A8Page?= =?UTF-8?q?=E5=BC=95=E7=94=A8List=E8=84=B1=E6=95=8F=E5=A4=B1=E6=95=88?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../secure/ext/aspect/SensitiveAspect.java | 29 ++++--------------- 2 files changed, 7 insertions(+), 24 deletions(-) diff --git a/pom.xml b/pom.xml index 9cf9472..fb260bb 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 io.gitee.chemors secure-ext-spring-boot-starter - 1.0.2-RELEASE + 1.0.3-RELEASE secure-ext-spring-boot-starter secure-ext-spring-boot-starter https://gitee.com/chemors/secure-ext-spring-boot-starter diff --git a/src/main/java/com/mos/secure/ext/aspect/SensitiveAspect.java b/src/main/java/com/mos/secure/ext/aspect/SensitiveAspect.java index 301fe82..322083b 100644 --- a/src/main/java/com/mos/secure/ext/aspect/SensitiveAspect.java +++ b/src/main/java/com/mos/secure/ext/aspect/SensitiveAspect.java @@ -14,10 +14,8 @@ import org.aspectj.lang.reflect.MethodSignature; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.Arrays; import java.util.List; /** @@ -74,11 +72,6 @@ public class SensitiveAspect { public Object sensitiveFormat(ProceedingJoinPoint joinPoint) throws Throwable { Object obj = joinPoint.proceed(); dealNode(obj); - /* if (obj instanceof List) { - dealList(obj); - } else { - dealSimpleData(obj); - }*/ return obj; } @@ -89,20 +82,6 @@ public class SensitiveAspect { } } - /* private void dealSimpleData(Object obj) throws IllegalAccessException { - Field[] fields = obj.getClass().getDeclaredFields(); - for (Field field : fields) { - field.setAccessible(true); - DesensitizationProp desensitizationProp = field.getAnnotation(DesensitizationProp.class); - if (desensitizationProp == null) { - continue; - } - String v = MosDesensitizedUtil.desensitizeData(field.get(obj),desensitizationProp); - field.set(obj, v); - } - }*/ - - public void dealNode(Object o) throws IllegalAccessException { if (o instanceof List){ dealList(o); @@ -116,16 +95,20 @@ public class SensitiveAspect { for (Field field : fields){ field.setAccessible(true); String type = field.getGenericType().toString(); + Object fieldValueObj = field.get(o); + if (fieldValueObj instanceof List){ + dealList(fieldValueObj); + } // 递归子属性 if (needDepthDeal && containType(type)){ - dealNode(field.get(o)); + dealNode(fieldValueObj); } DesensitizationProp desensitizationProp = field.getAnnotation(DesensitizationProp.class); if (desensitizationProp == null) { continue; } - String v = MosDesensitizedUtil.desensitizeData(field.get(o),desensitizationProp); + String v = MosDesensitizedUtil.desensitizeData(fieldValueObj,desensitizationProp); field.set(o, v); } } -- Gitee