Spring AOP支持五种类型的通知:
- 前置通知(Before):在目标方法执行之前执行的通知。这是最常用的一种通知类型,可以用于日志记录、性能监控等场景。
- 后置通知(After):在目标方法执行之后执行的通知,无论目标方法是否抛出异常。这种通知类型可以用于资源释放、清理操作等场景。
- 返回通知(AfterReturning):在目标方法成功执行并返回结果后执行的通知。这种通知类型可以用于对返回结果进行处理或修改。
- 异常通知(AfterThrowing):在目标方法抛出异常后执行的通知。这种通知类型可以用于异常处理、错误日志记录等场景。
- 环绕通知(Around):在目标方法执行前后都执行的通知。这种通知类型可以用于自定义目标方法的执行逻辑,例如手动控制事务、权限校验等。
需要注意的是,不同类型的通知在切面中的优先级和执行顺序是有区别的。在实际应用中,我们可以根据需求选择合适的通知类型来实现特定的功能。