log4j的使用

xiaoxiao2021-02-28  134

package com.pagedemo.aspect; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; /** * 控制主体 */ @Aspect @Component //将文件引入spring容器中 public class HttpAspect { private final static Logger logger = LoggerFactory.getLogger(HttpAspect.class); @Pointcut("execution(public * com.pagedemo.Controller.UserController.userList(..))") public void log(){} @Before("log()") public void dobefore(JoinPoint joinPoint){ // JoinPoint ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request = attributes.getRequest(); // url logger.info("url={}",request.getRequestURI()); // method logger.info("method={}",request.getMethod()); // ip logger.info("ip={}",request.getRemoteAddr()); // 类方法 logger.info("class_method-{}",joinPoint.getSignature().getDeclaringTypeName()+"."+joinPoint.getSignature().getDeclaringType()); // 参数 logger.info("args={}",joinPoint.getArgs()); } @After("log()") public void doafter(){ logger.info("222222222222"); } //获取返回的内容 @AfterReturning(returning = "object",pointcut = "log()") public void doafterReturning(Object object){ logger.info("response={}",object.toString()); }}
转载请注明原文地址: https://www.6miu.com/read-19077.html

最新回复(0)