如何在Spring中更改注释的执行顺序?

时间:2017-04-22 07:31:38

标签: spring aop spring-annotations

我有一个自定义注释@MyAnnotation

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.METHOD })
public @interface MyAnnotation {
  String [] roles() default {};
}

我正在使用我的注释

@MyAnnotation
@RequestMapping(value = "/test/xyz", method = RequestMethod.POST)
@ResponseBody
public String myFunc(@Valid TestClass test) {
    return "Name: " + test.getName();
}

我想在Javax的@Valid注释之前执行我的自定义注释@MyAnnotation,因为我在我的注释实现中执行了一些安全检查,并且需要在验证正文之前执行这些注释。

有没有办法可以增加自定义注释的优先级,以便在@Valid注释之前执行它?