Spring的Aop

本文介绍了Spring框架中的AOP(面向切面编程),包括其概念、通过动态代理实现的优势,以及AOP的关键概念如Target、Proxy、Joinpoint、Pointcut、Advice、Aspect和Weaving。还详细讲解了切点表达式的常用格式。
摘要由CSDN通过智能技术生成

Aop

概念

aop是一个面向切面编程,通过动态代理实现的

面向切面编程

面向切面编程与面向对象编程是互补关系
面向对象编程是纵向的进行
面向切面编程是在面向对象编程基础上进行横向的加强

代理

替目标对象完成一些不易完成的事情(比如在屎山代码上进行修改)

优势

在不改变源码的情况下对方法进行功能增强

动态代理

JDK代理:基于接口的动态代理技术
cglib代理:基于父类的动态代理技术

AOP的相关概念

作用
Target代理的目标对象
Proxy代理
Joinpoint连接点
Pointcut切入点
Advice通知/增强
Aspect切面
Weaving织入

切点表达式

execution([修饰符] 返回值类型 包名.类名.方法名(参数))
常用的书写格式:
execution(* 包名..(…))

  • 访问修饰符可以省略
  • 返回值类型、包名、类名、方法名可以使用星号* 代表任意
  • 包名与类名之间一个点 . 代表当前包下的类,两个点 … 表示当前包及其子包下的类
  • 参数列表可以使用两个点 … 表示任意个数,任意类型的参数列表
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值