我正在使用带有服装注释的 AOP,为方法添加计时器。
@Around(value = "@annotation(benchmark)")
public void func(final ProceedingJoinPoint joinPoint, final Benchmark benchmark) throws Throwable {
//wrap the call to the method with timer
final long t0 = System.currentTimeMillis();
logger.error(t0 + " ");
joinPoint.proceed();
final long elapsed = (System.currentTimeMillis() - t0);
logger.error(elapsed + " ");
}
当带注释的方法抛出异常时,我希望能够做一些事情。而且我不确定什么是正确的方法...
我阅读并看到有:
@AfterThrowing(pointcut = "execution(* com.mycompany.package..* (..))", throwing = "ex")
据我了解@AfterThrowing
并没有给我想要的东西,我需要以某种方式仅从使用基准注释注释的方法中缓存异常。
任何想法?
谢谢!