【注解】@Pointcut

【注解】@Pointcut

@Pointcut 是 Spring AOP(面向切面编程)中的一个注解,用于定义一个切入点(Pointcut)。

在 Spring AOP 中,切入点定义了哪些方法应该被拦截(即哪些方法会被增强)。一般来说,切入点可以使用表达式来指定,表达式会匹配到需要被拦截的方法。

以下是 @Pointcut 的基本用法:

@Pointcut("execution(* com.example.service.*.*(..))")
private void anyServiceMethod() {}

解释:

  • @Pointcut 注解用于定义一个切入点。
  • "execution(* com.example.service.*.*(..))" 是切入点表达式,它指定了需要拦截的方法。在这个例子中,它匹配了 com.example.service 包下的所有类的所有方法。
  • private void anyServiceMethod() {} 是一个命名的切入点,它可以在其他通知中引用。

然后,你可以在通知(例如 @Before@After 等)中使用这个切入点,来指定在哪些方法上应用这个通知:

@Before("anyServiceMethod()")
public void doSomethingBefore() {
    // 在匹配到的方法执行之前执行的逻辑
}

这样,doSomethingBefore() 方法就会在匹配到的方法执行之前被调用。

总的来说,@Pointcut 用于定义切入点,而切入点表达式指定了哪些方法会被拦截。一旦定义了切入点,你可以在通知中引用它,从而在匹配到的方法执行前后执行额外的逻辑。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值