美文网首页
Java AOP 设置执行前切面点是注解的写法

Java AOP 设置执行前切面点是注解的写法

作者: 活活的鱼 | 来源:发表于2023-02-05 17:10 被阅读0次

示例

@Aspect
@Component
public class LogAspect {
  @Before("@annotation(com.example.aop.Action)")
  public void before(JoinPoint joinPoint) {
    MethodSignature signature = (MethodSignature) joinPoint.getSignature();
    Method method = signature.getMethod();
    Action action = method.getAnnotation(Action.class);
    System.out.println("注解式拦截 " + action.name());
  }
}

解释说明:

@Aspect 注解表示这是一个切面类
@Component 注解表示这是一个 Spring 组件,可以被自动扫描到
@Before 注解表示这是一个前置通知,在方法执行前执行
@annotation(com.example.aop.Action) 表示匹配带有 Action 注解的方法
JoinPoint 表示连接点,可以获取方法签名和参数等信息
MethodSignature 表示方法签名,可以获取方法的返回值类型和参数列表等信息
Method 表示方法,可以获取方法的注解等信息

相关文章

网友评论

      本文标题:Java AOP 设置执行前切面点是注解的写法

      本文链接:https://www.haomeiwen.com/subject/ymczhdtx.html