Spring Aop 更多的是OOP开发模式的一个补充,帮助OOP以更好的方式来解决对于需要解决业务功能模块之上统一管理 的功能
以一副图来做为AOP功能的说明更直观些。对于类似系统的安全检查,系统日志,事务管理等相关功能,面向对象的开发方法并没有更好的解决方法
AOP引入了一些概念。更多的是Spring的设计。下面一一介绍
Joinpoint:方法需要做拦截的执行点。常见的有(方法调用,方法调用执行,构造方法调用,字段设置等)
Pointcut:代表Joinpoint的表述方式。
Advice:关注点逻辑的载体,他代表织入到Jointpoint的横切逻辑。类似于类中的方法
Aspect:概念实体,对系统横切关注点逻辑进行模块化封装的AOP概念实体
织入器:把以上定义的模型集成到指定方法体中。Spring主要使用代理模式来完成这个操作
下面会写下Spring织入Aop逻辑的流程,主要有两种方法,分别对于 使用接口的类或者单独类的两种