之前以为只能在方法签名上加切面,今天发现注解上也能加切面
1.自定义一个注解(任意注解都可以,不一定是自定义的)
@Target({ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) public @interface RestRequestHelper { }
2.在一个方法上加上注解,比如加在controller的请求方法上
@PostMapping("/test") @RestRequestHelper public String test(@RequestBody Map map) { return "aa"; }
3.定义一个切面
@Around("@annotation(restRequestHelper)") public Object process(ProceedingJoinPoint pjp, RestRequestHelper restRequestHelper) { //do something }