连接点(JoinPoint):程序执行的某个特定位置,如某方法调用前后、方法异常后。
切点(Pointcut):每个类有多个连接点,通过切点定位到特定的连接点,一切点可匹配多个连接点。
1.前置通知:@Before("execution()")
2.返回通知:@AfterReturning(value="execution()",returning="result")
3.异常通知:@AfterThrowing(value="execution()",throwing="ex")
4.后置通知:@After,无论是否有异常都会执行,不能看到执行结果
5.环绕通知:@Around最强的通知,需要提供ProceedingJointPoint ,要有返回值
Two:控制切面顺序
@order(序号) 方法 来控制切面的优先级。
Three:定义方法声明切入点表达式,通知可以直接使用此方法名来引用当前切入点表达式
@Pointcut("execution()")
public void cut(){}
@Before(com.package.cut())