Aspect:切面,通常是一个类,可定义切入点【Pointcut】和通知【advice】。
切面可使用@Aspect注解方式或者基于XML配置文件实现。此处,仅涉及注解方式。
切面类上通常添加两个注解:
@Aspect:把类变成切面类
@Component:把切面类添加到IOC容器中
@Aspect注解方式可实现前置通知、返回通知、后置通知、异常通知、环绕通知。
@Before:前置通知,目标方法之前执行
@After:后置通知,目标方法之后执行(始终执行)
@AfterReturning:返回通知,目标方法之后执行(异常不执行)
@AfterThrowing:异常通知,出现异常时候执行
@Around:环绕通知,环绕目标方法执行
代码实现过程如下
(1)添加需要通知的业务代码: