spring aop|切入点pointcut表达式编写方案示例

概念及作用

切入点表达式,也称之为AspectJ切入点表达式,指的是遵循特定语法结构的字符串,其作用是用于对符合语法格式的连接点进行增强。,它是AspectJ表达式的一部分。

关于AspectJ

AspectJ是一个基于Java语言的AOP框架,Spring框架从2.0版本之后集成了AspectJ框架中切入点表达式的部分,开始支持AspectJ切入点表达式。

表达式中的关键字

关键字 说明
execution 用于匹配方法执行的连接点

切入点表达式的使用示例

从上到下作用范围越来越大

  1. 全限定方法名
    访问修饰符 返回值 包名.包名.包名.类名.方法名(参数列表)
    参数列表,可以使用具体类型,也可以不设定具体类型
    参数类型 说明 例子
    基本类型 直接写类型名称 int,double
    引用类型 必须写全限定类名 java.lang.String , com.kehao.Student
    任意参数类型* 必须有参数 * com.kehao.pojo.Student.speak(*)
    任意参数类型.. 有无参数均可,有参数可以是任意类型 * com.kehao.pojo.Student.speak(..)
    全匹配方式eg:
    public void com.kehao.pojo.Student.speak()
  2. 访问修饰符可以省略
    void com.kehao.pojo.Student.speak()
  3. 返回值可以使用*,表示任意返回值
    * com.kehao.pojo.Student.speak()
  4. 包名可以使用..表示当前包及其子包
    * com..Student.speak()
  5. 类名和方法名,都可以使用*,表示任意类,任意方法
    * com.kehao.pojo.*.*()
  6. 全匹配方式:
    * *..*.*(..)
上一篇:scala机器学习-保险预测-第一节


下一篇:25-Spring-Aop注解开发