通过AOP拦截自定义注解实现相应的功能处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过AOP拦截自定义注解实现相应的功能处理相关的知识,希望对你有一定的参考价值。

1、自定义注解

@Retention(RetentionPolicy.RUNTIME)
@Target(value={ElementType.METHOD})

public @interface ResultHandle{

  Class<?> handler() default ResultHandler.class;

}

 

2、定义方法拦截器实现ResultHandleAnnotationMethodInterceptor实现MethodInterceptor,在invoke方法中对于要执行的方法根据注解配置进行相应的处理。

 

3、在spring配置文件中配置

<bean id="resultHandleAnnotationMethodInterceptor" class="com.zk.interceptor.ResultHandleAnnotationMethodInterceptor"/>


<aop:config proxy-target-class="true">
<!--切面:所有包含@ResultHandle注解的方法-->
<aop:pointcut expression="@annotation(com.zk.annotation.ResultHandle)" id="resulthandle-annotation-pointcut"/>
<!--通知:对定义的切面执行通知-->

<aop:advisor advice-ref="resultHandleAnnotationMethodInterceptor" pointcut-ref="resulthandle-annotation-pointcut"/>

</aop:config >

以上是关于通过AOP拦截自定义注解实现相应的功能处理的主要内容,如果未能解决你的问题,请参考以下文章

用户操作拦截并作日志记录--自定义注解+AOP拦截

Java自定义注解的定义与使用

SpringVC 拦截器+自定义注解 实现权限拦截

自定义注解实现AOP日志记录

JAVA-Spring注解实现AOP权限拦截,如何取得方法上自定义Annotation的值呢?

aop 拦截含有特定注解的类