定义

后置返回通知

连接点执行成功之后执行通知,使用@AfterReturning指定切入点和通知方法。

参数

JoinPoint

在需要连接点(方法)的信息时,可以为通知添加一个JoinPoint类型的参数来获取。

参数位置

在Spring中,建议将JoinPoint作为第一个参数。

返回值

在需要返回值时,为通知添加一个返回值类型的参数并将@AfterReturning|returning赋值为参数名。

示例

@Aspect  
@Component
@Slf4j
public class LogAspect {
	@PointCut("@annotation(com.example.annotation.Log)")
	public void logAnnotation() { }
	
	@AfterReturning(pointcut = "logAnnotation()", returning = "returnValue")
	public void logAfterReturning(JoinPoint joinPoint,Object returnValue) {  
		MethodSignature signature = (MethodSignature) joinPoint.getSignature();  
		Method method = signature.getMethod();
		log.info(“after method:{} successed with:{}”, method.getName(), returnValue);
	}
}