AOP
定义
AOP是一种思想,是软件设计领域中的面向切面编程
理解为一个动态过程(在对象运行时动态织入一些扩展功能或控制对象执行
AOP的应用场景
非核心业务一班是通过特定方式切入到系统中,这种特定方式一班就是借助AOP进行实现
AOP就是要基于OCP(开闭原则),在不改变原有系统核心业务代码的基础代码的基础上动态添加一些
扩展功能并可以控制对象的执行
例如:日志处理、事务处理、权限处理、缓存处理等等
AOP相关术语
切面(aspect)
横切面对象,一般为一个具体类对象(可以借助@Aspect声明)
通知(advice)
在切面的某个特定连接点上执行的动作(扩展功能)
例如:around、before、after等
切入点(pointcut)
对连接点拦截内容的一种定义,一般可以理解为多个连接点的结合
连接点(joinpoint)
程序执行过程中某个特定的点,一般指被拦截到的方法