From 2fcd97552d16718cc7997629fd637a73a5a4483f Mon Sep 17 00:00:00 2001 From: 郑永安 <zyazyz250@sina.com> Date: 星期一, 19 六月 2023 14:44:19 +0800 Subject: [PATCH] 删除 --- src/main/java/com/gk/firework/Config/Log/JsonParamsLogAspect.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 59 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gk/firework/Config/Log/JsonParamsLogAspect.java b/src/main/java/com/gk/firework/Config/Log/JsonParamsLogAspect.java new file mode 100644 index 0000000..73e9df3 --- /dev/null +++ b/src/main/java/com/gk/firework/Config/Log/JsonParamsLogAspect.java @@ -0,0 +1,59 @@ +package com.gk.firework.Config.Log; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.gk.firework.Domain.Exception.BusinessException; +import org.apache.log4j.Logger; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.aspectj.lang.annotation.Pointcut; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import java.text.SimpleDateFormat; +import java.util.Arrays; +import java.util.Date; +import java.util.Objects; + +@Aspect +@Component +public class JsonParamsLogAspect { + + private static final Logger logger = Logger.getLogger(JsonParamsLogAspect.class); + + @Pointcut("@annotation(com.gk.firework.Domain.Log.JsonParams)") + public void controllerAspect(){ + } + + @Before(value = "controllerAspect()") + public void beforeEnterControllerExecute(JoinPoint point) { + this.logHandle(point); + } + + + private void logHandle(JoinPoint point) { + try { + Object[] args = point.getArgs(); + if (args.length != 1) throw new BusinessException("系统错误,参数对象只能是一个且固定"); + + HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); + String url = request.getRequestURL().toString(); + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String current = formatter.format(new Date()); + Object arg = args[0]; + if (arg instanceof JSONArray || arg instanceof JSONObject) { + logger.info("\n请求时间:" + current + + "\n请求地址:" + url + + "\n请求参数:" + arg.toString()); + } + } catch (BusinessException e) { + e.printStackTrace(); + logger.error(e.getMessage()); + } catch (Exception e) { + e.printStackTrace(); + } + } +} -- Gitblit v1.9.2