摘要:
1. 核心概念 1.1. 切面(Aspect) 切面是 AOP 的核心概念,指的是横切关注点的模块化。一个切面就是关注程序中某一类功能(如事务管理、日志记录等)的独立模块。切面可以由通知(Advice)和切入点(Pointcut)组成。 1.2. 通知(Advice) 通知是指具体的增强行为,它是在 阅读全文
摘要:
方法区存放类的信息,当类第一次加载时会把类的信息比如方法变量加载到方法区里面,堆存放的new出来的对象。 new出来的变量实例是从方法区copy一份,方法存的方法区得引用。堆里面存的都是变量。存的是引用。 栈内存:存储的是局部变量 局部变量:一旦超出自己作用范围,就不能再使用了。 堆内存:存储都是对 阅读全文
摘要:
aop的流程:明确要对是类还是方法的增强,然后建立对应的切面,写上注解@compnent,aspect(),使用aspect配合切入点表达式标注要切入的类或方法,进行方法的拦截, 通过joinPoint,获得方法的元数据信息,通过joinPoint.proceed();继续让方法执行以及返回值的信息 阅读全文