spring实现aop演示:
连接点:增删改查
切入点:目标对象,已经增强的方法
准备目标对象:增删改查
准备通知:前置通知,后置通知,环绕通知,异常通知,后置通知
通过配置进行织入,将通知织入到目标对象中,形成了代理对象,
什么是springaop?
aop按照概念来说,就是动态的将代码切入到类的方法、指定位置上的编程思想就是面向切面编程
比如说:有一个类,类里面有很多的方法,我们需要对类中的方法进行增强,类就成为目标对象,类中的方法成为连接点(joinPoint)
实际工作中,我们不需要对所有的方法进行增强,只需要对某个方法增强,增强的方法称为切入点(pointcut)
我们在进行切入了以后要做那些事呢?比如说执行删除方法,打印出的日志,日志的记录称为通知,
将通知织入到目标对象中,形成了代理对象。
AOP底层实现原理:
一种是jdk的动态代理技术
jdk里面有一个proxy类,类里面有一个方法newProxyInstance(
三个参数:类加载器,类目目标类实现的接口,接口invocationHandle)
一种是CGLib代理
技术是比较底层的字节码增强技术