Spring---AOP术语

  • 通知(Advice):定义了什么是切面以及切面何时使用。
  • 连接点(Joinpoint):在程序执行过程中,切面能够插入程序的所有的点。
  • 切入点(Pointcut):切入点就是一个或多个连接点,连接点的子集。定义了切面何地进行。
  • 切面(Aspect):通知和切入点的集合。
  • 引入(Introduction):“引入”允许我们向现有的类添加新方法或属性。
  • 目标(Target):被通知的对象。
  • 代理(Proxy):“代理”是向目标对象被应用通知之后创建的对象。对于客户对象来说,目标对象(AOP之前)和代理对象(AOP之后)是一样的。
  • 织入(Weaving):“织入”是把切面应用到目标对象之后创建代理对象的过程。切面在指定连接点织入到目标对象,在目标对象的生命周期里有多个时机可以发生织入过程:

编译时:切面在目标类编译时被织入,这需要特殊的编译器,AspectJ的织入编译器就以这种方式织入切面。

类加载时:切面在目标类加载到JVM时被织入。

运行时:切面在程序运行的某个时刻被织入。一般情况下,在织入切面时,AOP容器会动态创建一个代理对象来委托给目标对象。这就是SpringAOP                                                      织入切面的方式。

Spring对AOP的支持:

  • 经典的基于代理的AOP(各版本Spring)
  • @AspectJ注解驱动的切面(仅Spring2.0)
  • 纯POJO切面(仅Spring2.0)
  • 注入式AspectJ(各版本Spring)

前三种都是基于代理的AOP变体。因此,Spring对AOP的支持局限于方法注入。

Spring的AOP框架的几个关键点:

  • Spring通知是用Java编写的
  • Spring只支持方法连接点。
  • Spring在运行时通知对象。
时间: 2024-11-06 07:03:59

Spring---AOP术语的相关文章

转:Spring AOP术语

1.连接点(Joinpoint) 程序执行的某个特定位置:如类开始初始化前.类初始化后.类某个方法调用前.调用后.方法抛出异常后.这些代码中的特定点,称为“连接点”.Spring仅支持方法的连接点,即仅能在方法调用前.方法调用后.方法抛出异常时以及方法调用前后这些程序执行点织入增强. 2.切点(Pointcut) 每个程序类都拥有多个连接点,如一个拥有两个方法的类,这两个方法都是连接点.但在这为数众多的连接点中,如何定位到某个感兴趣的连接点上呢?AOP通过“切点”定位特定的连接点.通过数据库查询

spring AOP 术语解释

初看aop,上来就是一大堆术语,而且还有个拉风的名字,面向切面编程,都说是OOP的一种有益补充等等.一下子让你不知所措,心想着:怪不得很多人都和我说aop多难多难.当我看进去以后,我才发现:它就是一些java基础上的朴实无华的应用,包括ioc,包括许许多多这样的名词,都是万变不离其宗而已. 2.为什么用aop 1就是为了方便,看一个国外很有名的大师说,编程的人都是"懒人",因为他把自己做的事情都让程序做了.用了aop能让你少写很多代码,这点就够充分了吧 2就是为了更清晰的逻辑,可以让你

关于 Spring AOP (AspectJ) 你该知晓的一切

[版权申明]未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/54629058 出自[zejian的博客] 关联文章: 关于Spring IOC (DI-依赖注入)你需要知道的一切 关于 Spring AOP (AspectJ) 你该知晓的一切 本篇是年后第一篇博文,由于博主用了不少时间在构思这篇博文,加上最近比较忙,所以这篇文件写得比较久,也分了不同的时间段在写,已尽最大能力去连贯博文中的内容

关于 Spring AOP (AspectJ) 该知晓的一切

关联文章: 关于Spring IOC (DI-依赖注入)你需要知道的一切 关于 Spring AOP (AspectJ) 你该知晓的一切 本篇是年后第一篇博文,由于博主用了不少时间在构思这篇博文,加上最近比较忙,所以这篇文件写得比较久,也分了不同的时间段在写,已尽最大能力去连贯博文中的内容,尽力呈现出简单易懂的文字含义,如文中有错误请留言,谢谢. OOP的新生机 OOP新生机前夕 神一样的AspectJ-AOP的领跑者 AspectJ的织入方式及其原理概要 基于Aspect Spring AOP

Spring 3.0 AOP (一)AOP 术语

关于AOP.之前我已写过一个系列的随笔: <自己实现简单的AOP>,它的关注点在于实现.实现语言是C#,实现方式为 自定义实现 RealProxy 抽象类.重写Invoke方法,以便进行方法调用的拦截.借此实现AOP.感兴趣的园友可以去瞅瞅. 今天.我们来看一下Spring中的AOP,本随笔着重关注AOP术语. 先说一句废话:如果你对AOP不是很熟悉.第一次看到这些术语可能会有点迷惑,不过没有关系.坚持继续向下看,然后再反过来看一遍,有些东西就能恍然大悟了. 连接点(Joinpoint) 连接

6.Spring中AOP术语与XML方式简单实现

1.AOP术语 1. Joinpoint(连接点):所谓连接点是指那些被拦截到的点.在spring中,这些点指的是方法,因为spring只支持方法类型的连接点 2. Pointcut(切入点):所谓切入点是指我们要对哪些Joinpoint进行拦截的定义 3. Advice(通知/增强):所谓通知是指拦截到Joinpoint之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,最终通知,环绕通知(切面要完成的功能) 4. Introduction(引介):引介是一种特殊的通知在不修改类代

Spring AOP相关术语

---------------------siwuxie095 Spring AOP 相关术语 (1)Joinpoint(连接点) 所谓连接点,是指类中可以被增强的方法 (2)Pointcut(切入点) 所谓切入点,是指要对哪些 Joinpoint 进行拦截的定义,即 类中实际 被增强的方法 (3)Advice(通知/增强) 所谓通知,是指拦截到 Joinpoint 之后所要做的事情,即 增强的逻辑 「通知 即 增强」 通知分为:前置通知.后置通知.异常通知.最终通知.环绕通知 (4)Aspec

Spring之AOP术语

AOP是Aspect Oriented Programing的简称.被译为"面向切面编程". AOP独辟蹊径通过横向抽取机制为这类无法通过纵向继承体系进行抽象的反复性代码提供了解决方法.怎样将这些独立的逻辑融合到业务逻辑中完毕和原来一样的业务操作.这才是AOP的关键. 1.连接点(Joinpoint) 程序运行的某个特定位置:如类開始初始化前.类初始化后.类某个方法调用前.一个类或一段代码拥有一些边界性质的特定点,这些代码中的特定点就被称为"连接点". Spring

spring面向切面编程(一)AOP术语

1.连接点(Joinpoint): 连接点是程序执行过程中可以插入切面的特定的点.这个点可以是调用方法时,抛出异常时,甚至修改字段时, 对于Spring而言,只支持方法连接点. 2.切点(Pointcut): 一个类有很多方法,这些方法都是连接点,但是并不是每一个方法都要插入切面,那么就要经过特定的条件过滤,这些 经过过滤后要插入切面的方法被称为切点,所以切点是由一个活多个连接点组成,是连接点集合的一个子集. 3.通知(Advice): 切面所要完成的工作称为通知,它定义的前切点前(before

Spring AOP 之 通知、连接点、切点、切面。

1:知识背景 软件系统可以看成是由一组关注点组成的,其中,直接的业务关注点,是直切关注点.而为直切关注点提供服务的,就是横切关注点. 2:面向切面的基本原理 什么是面向切面编程 横切关注点:影响应用多处的功能(安全.事务.日志) 切面: 横切关注点被模块化为特殊的类,这些类称为切面 优点: 每个关注点现在都集中于一处,而不是分散到多处代码中 服务模块更简洁,服务模块只需关注核心代码. AOP 术语 通知: 定义:切面也需要完成工作.在 AOP 术语中,切面的工作被称为通知. 工作内容:通知定义了