注:本文为作者学习总结,并不是教学!!!
一、AOP的术语
1.连接点:
能够被拦截的地方,Spring aop 是基于动态代理的所以是方法拦截,类中的每一个方法都可以被看作是一个连接点。
2.切点:
具体定位的连接点,性质与连接点相同,只不过是被动态代理拦截的连接点
3.通知(也称增强):。
也就是在切点的某个位置添加的一段代码。Spring Aop 给了我们五种位置:前置、后置、返回、异常、环绕。
4.织入:
将通知(增强)引入切点的过程。
5.引入:
将现有的类添加新的方法
6.切面:
切面由切点与通知组成,点与点也就形成了面。
二、AOP总结
1.Aop 底层实际上是动态代理,动态代理分为JDK动态代理和CGLib动态代理。如果被代理对象没有实现接口那么使用的是CGLib动态代理。
2.如果是单例的话,我们最好使用CGLib动态代理,因为它比JDK动态代理要快。