使用AspectJ框架实现AOP
@Pointcut定义和管理切入点注解
语法格式:
@Pointcut(value="切入点表达式")
@Pointcut
: 定义和管理切入点,不是通知注解。
- 属性: value 切入点表达式
- 位置: 在一个自定义方法的上面, 这个方法看做是切入点表达式的别名。
在其他的通知注解中,可以使用方法名称,就表示使用这个切入点表达式了
以业务方法中的doThird为例:
在切面方法中定义前置通知和最终通知方法并添加注解:
测试:
添加@Pointcut注解
@Pointcut(value="切入点表达式")
@Pointcut
: 定义和管理切入点,不是通知注解。
- 属性: value 切入点表达式
- 位置: 在一个自定义方法的上面, 这个方法看做是切入点表达式的别名。
在其他的通知注解中,可以使用方法名称,就表示使用这个切入点表达式了
@Pointcut("execution(* *..SomeServiceImpl.doThird(..))")
private void mypt(){
//无需代码
}
可以定义多个pointcut分别表示多个切入点表达式。
测试: