zoukankan      html  css  js  c++  java
  • 浅析Spring AOP术语

    AOP是Spring框架面向切面的编程思想:

    将涉及多业务流程的通用功能抽取并单独封装,形成独立的切面,在合适的时机将这些切面横向切入到业务流程指定的位置中。

    1、Join point(连接点):程序执行过程中的一个点,如方法的执行或异常的处理。在Spring AOP中,连接点总是表示方法的执行。通俗的讲,连接点即表示类里面可以被增强的方法。(单个)

    2、Point cut(切入点):切入点是与连接点匹配的表达式,用于确定是否需要执行通知。可以理解为需要被拦截的Join point。(范围)

    3、Advice(增强/通知):指拦截到Join point之后所要执行的方法。(措施)

    4、Aspect(切面):表示Point cut(切入点)和Advice(增强/通知)的结合。(方案)

    五种通知工作:

    1、@Before前置通知:在切入点运行前执行,不会影响切入点的逻辑。

    2、@After后置通知:在切入点正常运行结束后执行,如果切入点抛出异常,则在抛出异常前执行。

    3、@AfterThrowing异常通知:在切入点抛出异常前执行。

    4、@AfterReturning返回通知:在切入点正常运行结束后执行。

    5、@around环绕通知:功能最强大、常用,在切入点执行前后自定义一些操作。需要负责决定是继续处理join point(调用ProceedingJoinPoint的proceed方法)还是中断执行。

    单纯使用OOP:


    权限判断:在每个操作前都加入权限判断,重复代码冗余。


    日志记录:在每个方法里的开始、结束、异常的地方手动添加日志,太繁琐。


    使用AOP就可以借助代理完成这些重复的操作,能够在逻辑过程中,降低各部分之间的耦合了。

     

     

  • 相关阅读:
    mysql分表和表分区详解
    CNN 文本分类
    基于深度学习的目标检测研究进展
    标注工具
    在Ubuntu登陆界面输入密码之后,黑屏一闪后,又跳转到登录界面
    R-CNN,SPP-NET, Fast-R-CNN,Faster-R-CNN, YOLO, SSD系列深度学习检测方法梳理
    LeNet,AlexNet,GoogleLeNet,VggNet等网络对比
    nginx使用与配置入门指南
    CentOS 7上重新编译安装nginx
    酸汤肉沫豆腐
  • 原文地址:https://www.cnblogs.com/mo-jian-ming/p/13269432.html
Copyright © 2011-2022 走看看