From 963537511a57c3a07f2e99760ce76e9d9740e7fa Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 24 二月 2022 01:53:34 +0800
Subject: [PATCH] 优化 映入类出错问题

---
 java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java |   39 +++++++++++++++++++++++----------------
 1 files changed, 23 insertions(+), 16 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java b/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
index a59a89c..793f101 100644
--- a/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
+++ b/java110-core/src/main/java/com/java110/core/trace/Java110TraceLogAop.java
@@ -8,6 +8,9 @@
 import org.aspectj.lang.annotation.Pointcut;
 import org.springframework.stereotype.Component;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 /**
  * trace log  api aop
  */
@@ -26,24 +29,28 @@
         TraceParamDto traceParamDto = new TraceParamDto();
         JSONObject paramIn = new JSONObject();
         JSONObject paramOut = new JSONObject();
-        try {
-            Object[] args = pjp.getArgs();
-            for (int paramIndex = 0; paramIndex < args.length; paramIndex++) {
-                paramIn.put("param" + paramIndex, args[paramIndex]);
+
+        Object[] args = pjp.getArgs();
+        for (int paramIndex = 0; paramIndex < args.length; paramIndex++) {
+            if (args[paramIndex] instanceof HttpServletRequest) {
+//                HttpServletRequest request = (HttpServletRequest) args[paramIndex];
+//                paramIn.put("param" + paramIndex, request.getParameterMap());
+                continue;
             }
-            traceParamDto.setReqParam(paramIn.toJSONString());
-            out = pjp.proceed();
-            if (paramOut != null) {
-                paramOut.put("param", out);
-            } else {
-                paramOut.put("param", new JSONObject());
+            if (args[paramIndex] instanceof HttpServletResponse) {
+                continue;
             }
-            traceParamDto.setResParam(paramOut.toJSONString());
-            Java110TraceFactory.putParams(traceParamDto);
-        } catch (Throwable e) {
-            throw e;
-        } finally {
-            return out;
+            paramIn.put("param" + paramIndex, args[paramIndex]);
         }
+        traceParamDto.setReqParam(paramIn.toJSONString());
+        out = pjp.proceed();
+        if (paramOut != null) {
+            paramOut.put("param", out);
+        } else {
+            paramOut.put("param", new JSONObject());
+        }
+        traceParamDto.setResParam(paramOut.toJSONString());
+        Java110TraceFactory.putParams(traceParamDto);
+        return out;
     }
 }

--
Gitblit v1.8.0