spring 注解方式动态代理

一:动态代理和静态代理的区别?

动态代理是将代理对象下的所有的方法都集中到代理类中集中处理.

静态代理是将代理对象的某个方法进行转发处理


二:注解方式的动态代理

第一步:

引入相关的xsd

通过aop命名空间的<aop:aspectj-autoproxy />声明自动为spring容器中那些配置@aspect 切面的bean创建代理,织入切面.

意思是在方法执行之前,先执行我的方法.要想把这个逻辑织入到某个方法上面,这个方法必须是spring管理起来的.

第二步:

@aspect

@conmpent

@before(execution(public void add(string id)))

pulic void beforeadd()

{

  syso("我在add之前执行");

}


三:

在Spring AOP中支持4中类型的通知:

1:before advice 在方法执行前执行。

2:after  returning  advice 在方法执行后返回一个结果后执行。

3:after  throwing advice 在方法执行过程中抛出异常的时候执行。

4:Around  advice 在方法执行前后和抛出异常时执行,相当于综合了以上三种通知。

 

当切入点都一样时,我们可以定义一个切入点,mymethod()





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值