/***
*
* @Description 切面类记录每个接口的出参和入参
* @Date 2021/8/10 14:48
* @author MengTao
* @version V1.0
*/
@Aspect
@Slf4j
@Component
public class WebLogAspect {
@Pointcut("execution(public * com.项目路径.controller..*.*(..))")
public void controllerLog() {
}
/**
* 忽略地址
*/
private List<String> ignoreUrl = new ArrayList<String>() {
{
}};
/***
* <b>标题:环绕型日志方法 在指定的切面内 所有的方法执行前后都会执行此方法</b> <br>
* <b>描述:</b> <br>
* <b>创建:</b>2021/3/12 14:45<br>
* <b>更新:</b>时间: 更新人: 更新内容:
*
* @param joinPoint
* @return java.lang.Object 此方法的返回值是接口的返回值
* @author MengTao
* @version V1.0.0
*/
@Around("controllerLog()")
public Object logBeforeController(ProceedingJoinPoint joinPoint) throws Throwable {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String uri = request.getRequestURI();
//忽略隔离路径
if (ignoreUrl.contains(uri)) {
return joinPoint.proceed();
}
// 获取执行的方法名称
String methodName = joinPoint.getSignature()
aop切面Controller层入参和出参日志打印
最新推荐文章于 2023-04-23 14:39:06 发布