目录
1.什么是AOP
2.Spring AOP可以干什么
3.AOP的组成成分
4.SpringAOP实现步骤
5.SpringAOP的原理
1.什么是AOP
AOP是面向切面编程,是一种思想
Spring AOP是一种具体的技术
2.Spring AOP可以干什么
1.用户登录状态的判断
2.统一的日志记录(比如记录访问次数)
3.统一方法执行实践
3.AOP的组成成分
环绕通知包含前置通知和后置通知
4.SpringAOP实现步骤
1.引入aop依赖
手动添加
2.定义切面(创建切面类)
定义一个类,@Component @Aspect
3.定义切点(配置拦截规则)
路径写法: execution(返回值 类的路径.* (..))
上图这个时设置拦截路径的
@Pointcut("哪些类需要拦截")
4.定义通知的实现(AOP具体实现了什么?)
5.SpringAOP的原理
SpringAOP的原理是动态代理,在运行的时候来实现切面的织入
动态代理分为两类,JDK和第三方的CGLIB 由于JDK只支持有接口的类进行代理,所以引入第三方,并且第三方的性能比较好。他们的底层都是基于反射
JDK动态代理和CGLIB的区别
1.JDK要求类必须实现接口
2.CGLIB通过实现被代理类的子类来实现。不能代理被final修饰的类