Spring之AOP

AOP:面向切面编程,其原理,基于动态代理的思想,通过代理对象,调用增强功能代码(权限控制,缓存,事务管理,日志记录等);

代理的方式:

JDK动态代理,针对目标类的接口进行代理(implementsInvocationHandler

CGLIG动态代理,可以在运行期间动态生成代理类的子类,不必只针对接口(implementsMethodInterceptor

tip:动态代理是在JVM运行时动态生成代理类(不存在的),静态代理时真是存在的,方法前后增强,如:strutsAction的ActionProxy;

Spring 1.2 时内置了AOP,Sping 2.0 使用了第三方AOP框架,AspectJ

代理模式的代码:https://gitee.com/venfu/rangers_collect_practice/tree/master/src/main/java/cn/xiaolang/function/design_pattern

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180309G17TD000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券