spring基础知识 (21):切面的优先级

  • 在同一个连接点上应用不止一个切面时, 除非明确指定, 否则它们的优先级是不确定的.
  • 切面的优先级可以通过实现 Ordered 接口或利用 @Order 注解指定.
  • 实现 Ordered 接口, getOrder() 方法的返回值越小, 优先级越高.
  • 若使用 @Order 注解, 序号出现在注解中,值越小优先级越高

LoggingAspect 切面的优先级设置为 2

@Order(2)
@Aspect
@Component
public class LoggingAspect {
    ...}

ValidateAspect 切面优先级设置为1

@Order(1)
@Aspect
@Component
public class ValidateAspect {
    ...}

spring基础知识 (21):切面的优先级_第1张图片

ValidateAspect 优先级高先执行


本系列参考视频教程: http://edu.51cto.com/course/1956.html

你可能感兴趣的:(spring,spring,AOP,切面的优先级)