@Component
@Aspect //切面类
public class LogAspect {
@Autowired
private HttpServletRequest request;
//环绕通知 包名 类名 方法名 参数
@Around(“execution(* com.sinosoft..controller..(…))")
public Object around(ProceedingJoinPoint point) throws Throwable{ //参数是目标方法
try {
String typeName="";
Signature signature = point.getSignature();
MethodSignature methodSignature = (MethodSignature)signature;
//获取当前执行的方法
Method targetMethod = methodSignature.getMethod();
//获取请求controller的路径
String name=methodSignature.getDeclaringTypeName();
System.out.println("------开始------");
//打印请求
System.out.println(name+"."+targetMethod.getName());
} catch (Exception e) {
e.printStackTrace();
}
return point.proceed(); //代理方法的返回值
}
/**
* 方法执行后
*
* @param resultVO
* @throws Exception
/
@AfterReturning("execution( com.sinosoft..controller..(…))”)
public void logResultVOInfo(JoinPoint joinPoint) throws Exception {
System.out.println("------结束------");
}
}
SpringBoot AOP 打印controller请求路径
最新推荐文章于 2024-04-18 09:42:01 发布