zoukankan      html  css  js  c++  java
  • spring之AOP

    AOP (Aspect Oritented Programming)

    允许将代码插入到方法的调用过程中。

    在不修改类代码的情况下,提供类似拦截器的功能。

    AOP从程序运行角度考虑程序的结构,提取业务处理过程的切面。

    AOP是动态的抽象。对应用执行过程中的步骤进行抽象。能处理程序执行的特定点,而不是具体的程序。

    AOP中的基本概念

    Aspect(切面):业务流程运行的某个特定步骤,也就是应用运行过程中的关注点,关注点可能横切多个对象,所以常常也称为横切关注点。

    Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在Spring中,这些点指的是方法,因为Spring只支持方法类型的连接点,实际上Joinpoint还可以是field或类构造器)。

    Advice(增强处理):AOP框架在特定的切入点执行的增强处理。处理有“around”、“before”、“after”等类型。

    Pointcut(切入点):可以插入增强处理的连接点。即当某个连接点满足指定要求时,该连接点将被添加增强处理,该连接点也就变成了切入点。

    Introduction(引入):在不修改类代码的前提下, 在运行期间动态地添加方法或字段到类中。

    Target(目标对象):被AOP框架进行增强处理的对象,也被称为被增强的对象。

    Weave(织入):将增强处理添加到目标对象中,并创建一个被增强的对象(AOP代理)的过程就是织入。

    Spring切面可以执行一下五种类型的通知:

    • before(前置通知):在一个方法之前执行的通知。

    • after(最终通知):当某连接点退出的时候执行的通知(不论是正常返回还是异常退出)。

    • after-returning(后置通知):在某连接点正常完成后执行的通知。

    • after-throwing(异常通知):在方法抛出异常退出时执行的通知。

    • around(环绕通知):在方法调用前后触发的通知。

  • 相关阅读:
    2019-04-02 cast and covert
    2019-04-01 为什么零售业务流行起来了?
    2019-04-01 银行的零售业务和对公业务
    服务器推送更新
    webpack 大概
    webpack
    react Hooks
    react 表单受控和非受控
    eslint规则
    react系列笔记:第三记-redux-saga
  • 原文地址:https://www.cnblogs.com/corolcorona/p/6689944.html
Copyright © 2011-2022 走看看