玩一玩编程式 AOP

玩一玩编程式 AOP

💡 原文日文,约11900字,阅读约需29分钟。
📝

内容提要

本文介绍了编程式AOP的基本用法,包括创建代理对象、设置目标对象和增强/通知。通过ProxyFactory和Enhancer来创建代理对象,根据是否有接口来选择使用JDK动态代理或CGLIB动态代理。同时介绍了Advisor的概念,以及Pointcut和Advice的实现。最后通过案例演示了如何添加一个Advisor。

🎯

关键要点

  • 本文介绍了编程式AOP的基本用法,包括创建代理对象、设置目标对象和增强/通知。

  • 使用ProxyFactory和Enhancer创建代理对象,选择JDK动态代理或CGLIB动态代理。

  • Advisor的概念包括Pointcut和Advice的实现。

  • 基于JDK的AOP需要接口,使用ProxyFactory设置目标对象和增强。

  • 基于CGLIB的AOP适用于没有接口的对象,直接生成代理对象。

  • 源码分析中,createAopProxy方法决定使用JDK或CGLIB动态代理。

  • Advisor由Pointcut和Advice组成,可以指定需要拦截的方法。

  • Pointcut接口用于过滤类和方法,ClassFilter和MethodMatcher用于具体实现。

  • AspectJExpressionPointcut用于通过表达式定义切面,常用于AOP。

  • 通过案例演示如何添加一个Advisor,结合Pointcut和Advice使用。

🏷️

标签

➡️

继续阅读