一段简单demo代码
@Aspect
@Slf4j
@Component
public class ControllerAspect {
@Around("execution(* org.example.controller..*(..))")
public Object around(ProceedingJoinPoint point) throws Throwable{
//获取request对象
ServletRequestAttributes requestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
HttpServletRequest request = requestAttributes.getRequest();
request.getMethod();
Object[] args = point.getArgs();
Object proceed = point.proceed(args);
log.info("========url ======>> {}",request.getRequestURI());
log.info("========method ======>> {}",request.getMethod());
log.info("========入参-begin ==============================================================");
if(args!=null&&args.length>0){
log.info(JSONUtil.toJsonStr(args[0]));
}
log.info("========入参-end ==============================================================");
log.info("========返回结果-begin==============================================================");
log.info(JSONUtil.toJsonStr(proceed));
log.info("========返回结果-end ==============================================================");
return proceed;
}
}