AOP的三种实现方式:
1、在编译期的时候织入
2、在类加载时修改字节码
3、使用动态代理增强方法
SpringAOP的实现:
第三种方式,使用动态代理实现方法增强。
连接点:每一个能够切的地方都是一个连接点,spring因为基于动态代理实现的aop,所以只能局限于方法拦截(其实就是where can)
切点:选择增强的连接点就是切点,就是你切入的点(其实就是where)
通知:在切点这做什么就是通知(其实就是do something)
通知有五种:before(之前),after(之后),afterreturning(返回),afterthrowing(异常),around(环绕,对于springAOP来说就是代理类中方法的实现,前面做点事,调用真实的类的方法,后面再做点事)
切面:切点加上通知就是切面,切面切在连接点,就完成了无侵入的方法增强。
网友评论