浅谈Spring---AOP

什么是AOP

             Spring-AOP是AOP框架之一,AspectJ也是AOP框架之一。但是Spring-AOP并不是完整的AOP框架,它里面也引入了AspectJ的一些模块,比如weaver(编织者).AOP是由AOP联盟提出的一种面向切面编程思想,Spring-AOP主要是使用动态代理来实现这个思想,他提供了两套解决方案,一种是jdk动态代理模式,一种是cglib动态代理模式。当目标优化,或本身为接口,或基于基类做代理,或自己本身也是代理则使用jdk动态代理模式,反之,则使用cglib动态代理模式。使用AOP思想可以很好的解决业务层额外功能冗余的问题,将额外功能抽取出来封装成advice,当需要使用时就切入进去。这样就使项目更加稳健。AOP这种思想的提出可以给我们提供一种解决问题的方式,我们可以不用单一使用OOP思想,在遇到问题是可以找到更好的解决方法。在web中的过滤器使用了AOP这种思想,过滤器的每次增强功能都可以看做是一起切入的过程,但是过滤器并没有使用动态代理这种方式,所以说,动态代理并不等于AOP。

            静态代理并不能从根本上解决额外代码冗余问题。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值