切面的优先级
可以利用@Order(1)注解方式指定切面的优先级,值越小,优先级越高。
创建ValidateAspect切面
@Aspect
@Component
@Order(1)
public class ValidateAspect {
@Before("execution(public int com.atguigu.spring.aop.ArithmeticCalculator.*(int,int))")
public void valideteArgs(JoinPoint joinPoint){
System.out.println("-->validate" + Arrays.asList(joinPoint.getArgs()));
}
}
看看打印输出结果
-->validate[1, 2]
The method add begins with [1, 2]
The method add ends
The method add ends with result = 3
result id 3
ValidateAspect 的Before最先执行了。