私はクラスを持っていますA
:
@Service
public class A {
public void goX() {
System.out.println("goX");
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public void goY() {
System.out.println("goY");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
および AOP クラスAOP
:
@Aspect
@Service
class AOP {
@Around("execution(* com.test.A.goX(..))")
public void calExecTime(ProceedingJoinPoint proceedingJoinPoint) throws Throwable {
long t1 = System.currentTimeMillis();
proceedingJoinPoint.proceed();
long t2 = System.currentTimeMillis();
System.out.println(t2-t1);
}
}
A.goX()
次に、メソッドごとに実行にかかる時間を数えることができますAOP.calExecTime()
。
私が欲しいのは、両方の時間を同じ方法で計算することですがA.goX()
、A.goY()
注釈AOP.calExecTime()
@Around
に物事を書き込む方法がわかりません。誰か助けてくれませんか?どうもありがとう。