一、AOP术语
1、连接点
类里边可以被增强的方法称为连接点
2、切入点
实际被增强的方法称为切入点
3、通知(增强)
实际被增强的逻辑部分被称为通知
通知被分为5种类型:
- 前置通知
@Before
- 后置通知
@AfterReturning
- 环绕通知
@Around
- 异常通知
@AfterThrowing
- 最终通知
@After
4、切面
把通知应用到切入点的过程叫做切面
二、AOP准备工作
- Spring框架一般都是基于AspectJ实现AOP操作
- AspectJ是一个独立的框架,并不是Spring的组成部分,一般把AspectJ框架和Spring框架一起使用来完成对AOP的操作
- 对于AspectJ框架实现AOP操作一般有两种方法:基于xml配置文件实现和基于注解实现,在开发中为了方便开发者使用,一般使用注解来实现对AOP的操作
- 在项目工程里引入AOP的相关依赖
切入点表达式
结构:execution([权限修饰符][返回类型][类全路径][方法名称][参数])
- 其中权限修饰符可以是public,可以是private等值,一般写通配符*,表示所有权限
- 返回类型可以省略
例如:execution(*com.Spring5.User.name(..))
execution(*com.Spring5.User. * (…))