Java AOP

在这里插入图片描述

引入AOP依赖

@Aspect 申明为AOP类
@Around 功能加到哪些方法上

切入点表达式 : 返回值 包名 + 类名 + 方法(方法参数, … 代表任意参数)

执行业务层方法时,运行共性方法
在这里插入图片描述

事物通过AOP实现

原始方法前开启事物,原始方法结束后 提交/回滚事物

AOP核心概念

在这里插入图片描述

为目标对象生成代理对象,程序执行的时候注入的是代理对象
调用代理对象的list方法,已经进行了功能的增强
在这里插入图片描述

通知类型

在这里插入图片描述

环绕通知,原始方法之前和之后都可以执行
要在代码中执行原始方法

在这里插入图片描述

抽取切入点表达式
引用切入点表达式,
要在其他类中使用,pointcut修饰的方法改为public
在这里插入图片描述

通知顺序

和切面类的类名排序有关

在这里插入图片描述

控制执行顺序@order(数字)
在这里插入图片描述

切入点表达式

在这里插入图片描述

execution切入点表达式,根据实现类描述

  • 根据实现类描述在这里插入图片描述
  • 根据接口描述
    ### 基于接口描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

@annotation切入点表达式

匹配有特定注解的方法
传入注解的全类名
在这里插入图片描述

自定义注解MyLog,要匹配哪个方法就在方法上加注解
在切入点表达式annotation中指定自定义的注解
在这里插入图片描述

在这里插入图片描述

连接点

可以被AOP控制的方法

在这里插入图片描述
可以获得目标方法的 方法名 参数 类名等信息
在这里插入图片描述

需要从httpservlet中获取用户id,直接注入httpservlet(直接注入,是因为容器中有这个对象?)

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值