AOP
一.AOP(面向切面编程) 在软件业,AOP为Aspect Oriented Programming的缩写,意为: 面向切面编程 , 通过 预编译 方式和运行期动态代理实现程序功能的统一维护的一种技术。 AOP是 OOP 的延续,是软件开发中的一个热点,也是 Spring 框架中的一个重要内容, 是 函数式编程 的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离, 从而使得业务逻辑各部分之间的 耦合度 降低,提高程序的可重用性,同时提高了开发的效率。 二.相关的基本概念: 切面(Aspect):一个模块化的横切逻辑(或称为横切关注点),可能会横切多个对象。 连接点(Join Point):程序执行中的某个具体的执行点。如上图中原对象的fun()就是一个连接点。 增强处理(Advice):切面在某个特定连接点上执行的代码逻辑。(有 前置增强、后置增强、环绕增强、异异常抛出增强、最终增强 等) 切入点(Pointcut):对连接点的特征进行描述,可以使用正则表达式,增强处理和一个切入点表达式相关联。 目标对象(Target object):被一个或多个切面增强的对象。 AOP代理(AOPproxy):由AOP框架所创建的对象,实现执行增强处理方法等功能。 织入(Weaving):将增强处理连接到应用程序中的类型或对象上的过程。 三.例子 架包 实体类 Dao层接口和实现类