Pointcut 介绍

Pointcut,切入点,它的作用是去描述匹配AOP的另一个概念join point,它描述joint point 所在的包,包中类执行的方法等。通过它,Spring Aop 就找到了join point 的位置,进而可以对join point 进行各种advice,比如 before advice,after advice,after returning advice 等。

Pointcut 组成

Pointcut 包含两个部分。第一部分为对join point 的描述,第二部分为自己的名字。如下

@Pointcut("execution(public  * com.example.*.*(..))")  //这部分是描述

public void   dataAccess(){  // 这部分是名字

}

Pointcut 的指示符

Pointcut 有如下的指示符

execution:表示匹配方法的执行join point。这个是Spring Aop 里面最重要的指示符。

within:现在匹配within所描述的类型下面的所有方法的join point。

this:限制匹配joint point 是this 所指定的类型的join point.

target:限制匹配join point 是target 所指定的类型的join point.

args:限制匹配join point 的参数是 args 所指定的类型。

@args:限制匹配joint point 的所传参数含@args指定的注解。

@target:限制匹配join point 的实例含@target指定的注解。

execution 指示符的具体描述

 execution(modifiers-pattern? ret-type-pattern declaring-type-pattern?name-pattern(param-pattern)throws-pattern?)

modifiers-pattern?  访问权限 比如:  public , private, 等 可选。

ret-type-pattern:返回值类型, 必须  ,可以用 * 标识任意。

declaring-type-pattern?:可选  必须

name-pattern:全类路径名  必须 ()参数为空  (..)任意参数   (*)任意的一个参数  (*.String) 第一个参数任意,第二个参数为string 类型。

param-pattern:参数列表  必须

throws-pattern?:异常,可选

Spring AOP Pointcut相关推荐

  1. Spring Aop pointcut expression表达式解析

    为什么80%的码农都做不了架构师?>>>    Pointcut 是指那些方法需要被执行"AOP",是由"Pointcut Expression&quo ...

  2. 第15章-Spring AOP切点表达式(Pointcut)详解

    文章目录 一.概述 二.切点表达式配置 1. 内置配置 2. 注解配置 3. 公共配置 二.切点表达式类型 **`execution`** **`within`** **`this`** **`tar ...

  3. Spring AOP介绍及源码分析

    2019独角兽企业重金招聘Python工程师标准>>> 软件开发经历了从汇编语言到高级语言和从过程化编程到面向对象编程:前者是为了提高开发效率,而后者则使用了归纳法,把具有共性的东西 ...

  4. Spring AOP AspectJ Pointcut Expressions With Examples--转

    原文地址:http://howtodoinjava.com/spring/spring-aop/writing-spring-aop-aspectj-pointcut-expressions-with ...

  5. Spring AOP中pointcut expression表达式解析

    Pointcut 是指那些方法需要被执行"AOP",是由"Pointcut Expression"来描述的. Pointcut可以有下列方式来定义或者通过&am ...

  6. Spring AOP 切点(pointcut)表达式

    概括 这遍文章将介绍Spring AOP切点表达式(下称表达式)语言,首先介绍两个面向切面编程中使用到的术语. 连接点(Joint Point):广义上来讲,方法.异常处理块.字段这些程序调用过程中可 ...

  7. Spring AOP中定义切点(PointCut)和通知(Advice)

    本文讨论一下Spring AOP编程中的两个关键问题,定义切点和定义通知,理解这两个问题能应付大部分AOP场景. 如果你还不熟悉AOP,请先看AOP基本原理,本文的例子也沿用了AOP基本原理中的例子. ...

  8. Spring AOP示例教程 - Aspect,Advice,Pointcut,JoinPoint,Annotations,XML Configuration

    Spring AOP示例教程 - Aspect,Advice,Pointcut,JoinPoint,Annotations,XML Configuration Spring Framework是基于两 ...

  9. Spring Aop(九)——基于正则表达式的Pointcut

    基于正则表达式的Pointcut JdkRegexpMethodPointcut Spring官方为我们提供了一个基于正则表达式来匹配方法名的Pointcut,JdkRegexpMethodPoint ...

最新文章

  1. 清单文件中android support,Android FileProvider 配置
  2. starting mysql. success!_启动mysql报错解决问题过程
  3. 前端学习(2815):小程序学习之开发者工具介绍
  4. 计算机技术培训承诺书,软件职业技术学院学生干部刻苦学习、文明诚信承诺书...
  5. 外卖侠使用教程【干货】
  6. jsmind结合php,thinkCMF5与jsMind实现文章Mind版
  7. BUUCTF misc 专题(82)[WUSTCTF2020]alison_likes_jojo
  8. 捋一捋DDR内存相关的各种频率
  9. Excel可以将中文翻译成英文
  10. Spring事务管理中异常回滚知识点总结
  11. 【BLE】跳频算法实例分析
  12. Vue基础实战-敲击瓶子
  13. 测试开发工作者日记:2020.6.17
  14. 如何查看淘宝同款商品最低价?怎么查看最低成交价?
  15. 中小学信息学可以参加的比赛
  16. 【代码随想录】二刷-哈希表
  17. Android搜索功能的案例,本地保存搜索历史记录
  18. Android手机发生了SSL连接错误该怎么解决
  19. 山东省2022 年专升本 计算机大纲(计算思维)
  20. 算法小题(答案在下方)

热门文章

  1. 光纤存储重组raid磁盘阵列和raid数据恢复成功案例
  2. 简单封装XMLHttpRequest
  3. 如何应对火车站强行乞讨的小孩
  4. 【JavaScript】“...“是什么?
  5. 前端路线--Vue(day01)
  6. 腾讯云存储2022年终回顾,感谢您的一路相伴
  7. 通过setsockopt设置SO_SNDBUF、SO_RCVBUF这连个默认缓冲区的值,再用getsockopt获取设置的值,发现返回值是设置值的两倍。
  8. python生成excel模板_实例9:用Python自动生成Excel档每日出货清单
  9. Paint中DiscretePathEffect的简单使用
  10. ASCII编码(以备不时之需)