1、@Aspect

*
名称:@Aspect

*
类型:注解

*
位置:类定义上方

*
作用:设置当前类为切面类

* 格式:
@Aspect
public class AopAdvice {
}

*
说明:一个beans标签中可以配置多个aop:config标签

 

2、@Pointcut

*
名称:@Pointcut

*
类型:注解

*
位置:方法定义上方

*
作用:使用当前方法名作为切入点引用名称

* 格式:
@Pointcut("execution(* *(..))")
public void pt() {
}

*
说明:被修饰的方法忽略其业务功能,格式设定为无参无返回值的方法,方法体内空实现(非抽象)

 

3、@Before

*
名称:@Before

*
类型:注解

*
位置:方法定义上方

*
作用:标注当前方法作为前置通知

* 格式:
@Before("pt()")
public void before(){
}

*
特殊参数:

*


 

4、@After

*
名称:@After

*
类型:注解

*
位置:方法定义上方

*
作用:标注当前方法作为后置通知

* 格式:
@After("pt()")
public void after(){
}

*
特殊参数:

*


 

5、@AfterReturning

*
名称:@AfterReturning

*
类型:注解

*
位置:方法定义上方

*
作用:标注当前方法作为返回后通知

* 格式:
@AfterReturning(value="pt()",returning = "ret")
public void afterReturning(Object ret) {
}

*
特殊参数:

*
returning :设定使用通知方法参数接收返回值的变量名

 

6、@AfterThrowing

*
名称:@AfterThrowing

*
类型:注解

*
位置:方法定义上方

*
作用:标注当前方法作为异常后通知

* 格式:
@AfterThrowing(value="pt()",throwing = "t")
public void afterThrowing(Throwable t){
}

*
特殊参数:

*
throwing :设定使用通知方法参数接收原始方法中抛出的异常对象名

 

7、@Around

*
名称:@Around

*
类型:注解

*
位置:方法定义上方

*
作用:标注当前方法作为环绕通知

* 格式:
@Around("pt()")
public Object around(ProceedingJoinPoint pjp) throws Throwable {
    Object ret = pjp.proceed();
    return ret;
}

*
特殊参数:

*

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信