2-5 AOP的相关术语

女爷i 2022-05-25 13:40 307阅读 0赞

以下是比较专业的术语。

  • Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在Spring中,这些点指的是方法,因为Spring只支持方法类型的连接点。
  • Pointcut(切入点):所谓切入点是指我们要对哪些Joinpoint进行拦截的定义。
  • Advice(通知/增强):所谓通知是指拦截到Joinpoint之后所要做的事情就是通知。通知分为前置通知、后置通知、异常通知、最终通知和环绕通知(切面要完成的功能)。
  • Aspect(切面):是切入点和通知的结合。
  • Target(目标对象):代理的目标对象(要增强的类)
  • Weaving(织入):是指把增强应用到目标对象来创建新的代理对象的过程。Spring采用动态代理织入,而AspectJ采用编译期织入和类装载期织入。
  • Proxy(代理):一个类被AOP织入增强后,就产生一个结果代理类。
  • Introduction(引介):引介是一种特殊的通知在不修改类代码的前提下,Introduction可以在运行期为类动态地添加一些方法或Field。

例如有如下一个类:

  1. public class User {
  2. public void add() {
  3. }
  4. public void update() {
  5. }
  6. public void delete() {
  7. }
  8. }

下面是用比较通俗易懂的话来阐述AOP开发中的常见的相关术语:

  • 连接点:在User类里面有3个方法,这3个方法都可以被增强,类里面的哪些方法可以被增强,这些方法就可被成为连接点。
  • 切入点:在一个类中可以有很多的方法被增强,在实际操作中,如若只增强了类里面的add方法,则实际增强的方法被称为切入点。
  • 增强/通知:比如增强User类里面的add方法,在add方法中添加了日志功能,这个日志功能就称为增强。
    通知类型:

    • 前置通知:在增强的方法执行之前进行操作。
    • 后置通知:在增强的方法执行之后进行操作。
    • 环绕通知:在增强的方法执行之前和执行之后进行操作。
    • 最终通知:增强了两个方法,执行第一个方法,执行第二个方法,在第二个方法执行之后进行操作。
      也可理解为后置通知后面执行的通知或者无论目标方法是否出现异常,最终通知都会执行。
    • 异常通知:程序出现异常之后执行的通知。
  • 切面:把增强应用到切入点的过程。即把具体增强的逻辑用到具体的方法上面的过程。
  • 目标对象:增强的方法所在的类,即要增强的类。
  • Weaving(织入):是指把增强应用到目标对象的过程。即把把advice应用到target的过程。

发表评论

表情:
评论列表 (有 0 条评论,307人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Spring中AOP相关术语

    Spring 的 AOP 实现底层就是对动态代理的代码进行了封装,封装后我们只需要对需要关注的部分进行代码编写,并通过配置的方式完成指定目标的方法增强。 我们必须理解 AOP

    相关 2-5 AOP相关术语

    以下是比较专业的术语。 Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在Spring中,这些点指的是方法,因为Spring只支持方法类型的连接点。

    相关 Spring AOP相关术语

    1:Joinpoint:连接点。指的是可以被拦截的点,在Spring AOP中可以简单的理解为Bean的方法。(忽略AspectJ) 2:Pointcut:切入点。指的是对哪

    相关 AOP术语

    下面来说一些AOP的一些术语 Joinpoint:连接点,能被拦截到的点。简单的说就是能被增强的点/能被扩展的点。 Pointcut:切入点,被拦截到的点。简单的说就

    相关 白话AOP术语

    > AOP作为OOP的一个强有力补充,发展到现在基本属于静态语言的标配了,君不见Java程序员谈及Spring,必提及IOC和AOP,只是相较于OOP中涉及到的专有名词,AOP