AOP 面向切面编程
OOP 面向对象编程
OOD 面向对象设计
AOP底层实现通过动态代理
1. jdk 必须实现接口
2.cglib 不需要实现接口
jdk和cglib的区别?
jdk 目标类和代理类是兄弟类
cglib 目标类和代理类是父子关系
AOP相关概念:
1. target 源对象
2. proxy 代理对象
3. jionpoint 连接点 可能被增强的方法
4. poincut 切点 一定被增强的方法
5. advice 通知/增强 具体方法要被增强的逻辑代码
6. aspect 切面 pointcut + advice
7. 织入 指从target到proxy的整个过程
通知(基于aspect-j)
前置 before
后置 after-returning
***环绕 around 在定义方法时候传入一个参数 ProceedingJoinPoint
异常 after-throwing
最终 after