AOP核心概念

什么是 AOP?

AOP:面向切面编程。简单说,就是把一些业务逻辑中的相同的代码抽取到⼀个独立的模块中,

在不惊动原始设计的基础上为其进行功能增强。

为什么使用AOP?

假如我现在要 crud 写⼀堆业务,可是如何业务代码前后前后进行打印日志和参数的校验呢? 我们可以把日志记录和数据校验可重用的功能模块分离出来,然后在程序的执行的合适的地方动态地 植入这些代码并执行。这样就简化了代码的书写。

业务逻辑代码中没有通用逻辑的代码,业务模块更简洁,只包含核心业务代码。实现了业务逻辑和通用逻辑的代码分离,便于维护和升级,降低了业务逻辑和通用逻辑的耦合性。

AOP核心概念

  • 连接点:程序执行过程中的任意位置。
  • 切入点:对连接点进行拦截的定位
  • 通知:拦截到连接点之后要执行的代码,也可以称为增强。
  • 通知类:定义通知的类
  • 切面:描述通知与切入点的对应关系
  • 目标对象:原始功能去掉共性功能对应的类产生的对象
  • 代理对象:代理对象是运行时生成的对象,目标对象无法直接完成工作,需要对其进行功能回填,通过原始对象的代理对象实现。

AOP入门案例

AOP通知类型:

前置通知 (@Before)

返回通知 ( @ AfterReturning)

异常通知 ( @ AfterThrowing)

后置通知 ( @ After)

环绕通知 ( @ Around )

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值