切入点表达式规则

附录:切入点表达式规则

  • 执行任何公有方法

    execution(public * *(..))
    
  • 执行任何以set开头的方法

    execution(* set*(..))
    
  • 执行com.xyz.service.AccountService类中的任何方法__(执行某个类的任何方法)__

    execution(* com.xyz.service.AccountService.*(..))
    
  • 执行当前包下类的任意方法(不含子包)

    execution(* com.xyz.service.*.*(..))
    
  • 执行当前包及其子包下类的任意方法

    execution(* com.xyz.service..*.*(..))
    
  • 执行当前包下类的任意方法(不含子包)

    within(com.xyz.service.*)
    
  • 执行当前包及其子包下类的任意方方法

    within(com.xyz.service..*)
    
  • 实现当前接口的类的任何方法

    this(com.xyz.service.AccountService)
    
  • 实现当前接口的类的任何方法

    target(com.xyz.service.AccountService)
    
  • 只有一个参数且实现了Serializable的任何方法

    args(java.io.Serializable)
    
  • 有Transactional注解标签的方法(针对特定注解标签)

    @target(org.springframework.transaction.annotation.Transactional)
    
  • 有Transactional注解标签的方法(针对特定注解标签)

    @within(org.springframework.transaction.annotation.Transactional)
    
  • 有Transactional注解标签的方法(针对特定注解标签)

    @annotation(org.springframework.transaction.annotation.Transactional)
    
  • 只有一个参数且参数有Classified注解的任何方法

    @args(com.xyz.security.Classified)
    
  • 指定名称的bean下任意方法

    bean(tradeService)
    
  • 满足通配符命名的bean下任意方法

    bean(*Service)
    
posted @ 2022-03-28 16:25  星梦泪痕  阅读(26)  评论(0编辑  收藏  举报