Spring AOP

切面:标注了@Aspect的类
切入点:也就是断言,包括一个切点表达式(@Pointcut)和一个签名(返回类型为void的方法),目前Spring只支持方法切入,不支持属性.
通知:切面下面的方法,与断言相关联
(以上三个概念,是在同一个类中)

关注点:业务类的方法

AOP代理:Spring判断出@Aspect切面下符合断言的业务Bean,并自动生成业务Bean的代理,
当匹配断言的业务Bean的方法被客户端调用的时候,执行对应的通知(advice).

简而言之,AOP代理就是:Spring代理符合断言的业务Bean,当匹配断言的业务方法被调用时,执行切面的通知.

注意:
切面本身不能被其它切面代理,当然也就不能被作为其它切面通知的对象.
Spring在生成代理时,会自动排除@Aspect的类
@AfterReturning(pointcut="execution(* com.xyz.app.*.*(..))",returning="retval")
public void doSomething(object retval){
    //do something... 
}

@AfterReturning(pointcut="execution(* org.abc.app.*.*(..))",returning="retval")
@AfterThrowing(pointcut="execution(* org.xyz.app.*.*(..))",throwing="ex")
public void doExeAction(NullPointExcepton ex){
   //do something... 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值