面向切面编程(Aop)是对面向对象编程的补充,是在不改变源码的基础上,动态的增强方法的功能。
实现
1.java代理
添加自定义注解实现,实际开发中不推荐,了解即可。
2.Spring规则
- 切点 :要添加代码的地方
- 通知(增强):向切点添加的代码
- 切面:切点+通知
- 连接点:切点的定义
使用的注解:
- @Aspect表示这是一个切面
- @Before前置通知,方法执行前执行
- @After后置通知,方法执行后执行
- @AfterReturning返回通知,方法有返回值时执行
- @AfterThrowing异常通知
- @Around环绕通知,可以实现以上四种通知
- @Pointcut统一定义切点