我知道我可以使用@AfterReturning
或@AfterThrowing
建议来检查方法是返回结果还是异常,但如果我想使用@After
建议怎么办? ?
有没有办法检查方法是否使用@After
建议返回了某些内容或异常?
答案 0 :(得分:0)
@After
建议适用于正常情况或案例,但没有分离。
@AfterReturning
- 如果方法完成,没有例外。
@AfterThrowing
- 如果方法以异常完成。
在您需要了解方法完成时,您可以使用@Around建议。
@Around("pointcut")
public Object execute(ProceedingJoinPoint pjp) throws Throwable {
try {
Object result = pjp.proceed();
//here you know that method is completed without exception
return result;
}
catch(Throwable ... Exception ..... ex) {
//here you know that method throws exception
log() , wrap() , handle()..... whatever....
}
}