zoukankan      html  css  js  c++  java
  • Spring AOP面向切面编程核心概念

    横切关注点

    • 对那些方法进行拦截,拦截后怎么处理,这些就叫横切关注点
    • 比如:权限认证、日志、事务

    通知 Advice

    • 在特定的切入点上执行的增强处理,有5种通知
    • 用途:记录日志、控制事务、提前编写好通用的模块,需要的地方直接调用

    连接点 JointPoint

    • 要用通知的地方,业务流程在运行过程中需要插入切面的具体位置
    • 一般是方法的调用前后,全部方法都可以是连接点
    • 只是概念,没啥特殊

    切入点 Pointcut

    • 不能全部方法都是连接点,通过特定的规则来筛选连接点,就是Pointcut,选中那几个你想要的方法
    • 在程序中主要体现为书写切入点表达式(通过通配、正则表达式)过滤出特定的一组JointPoint连接点
    • 过滤出相应的Advicce将要发生的joinPoint地方

    切面 Aspect

    • 通常是一个类,里面定义 切入点+通知,定义在什么地方;什么时间点,做什么事情
    • 通知 advice致命类时间和做的事情(前置、后置等)
    • 切入点pointcut指定在什么地方干这个事情
    • web接口设计中,web层-》网关层-》服务层-》数据层,每一层之间也是一个切面,对象和对象,方法和方法之间都是一个个切面

    目标 target

    • 目标类,真正的业务逻辑,可以在目标类不知情的条件下,增加新的功能到目标类的链路上

    织入 Weaving

    • 把切面(某个类)应用到目标函数的过程成为织入

    AOP 代理

    • AOP框架创建的对象,代理就是目标对象的加强
    • Spring中的AOP代理可以使用JDK动态代理,也可以是CGLIB代理
  • 相关阅读:
    easyexcel快速入门
    9个Vue.js库
    9个你应该知道的顶级JavaScript库
    7个使用JavaScript构建数据可视化的实用工具库
    html 无缝轮播图完整代码
    JavaScript编程语言基础语法总结
    html布局 百分比自适应框架网页模板
    js、jQuery实现文字上下无缝轮播、滚动效果
    React中实现条件渲染的方法
    使用JavaScript / jQuery为网站创夜间/高亮模式
  • 原文地址:https://www.cnblogs.com/chenyanbin/p/13304842.html
Copyright © 2011-2022 走看看