AOP
公式:AOP=通知方法 + 切入点表达式
可以降低代码的耦合性,实现功能拓展。
通知
特点:不能干预目标方法是否执行,用来监控程序运行状态的记录
通知类型:@Before @Around @AfterReturn @AfterThrowing @After
@Around
在目标方法执行前后都要执行的通知方法,proceedingJoinPoint 只能在此注解修饰的方法内使用,在其他,以参数方式使用
此注解修饰的方法可以控制目标方法是否运行,joinPoint.proceed()
切入点表达式
- bean(bean的名称 bean的ID) 用于匹配指定 bean 对象的所有方法
- within(包名.类名) 用于匹配指定包下所有类内的所有方法
- execution 用于按指定语法规则匹配到具体方法
- @annotation 用于匹配指定注解修饰的方法