1.在pom.xml里添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
@Configuration,用于生命这个是一个Spring管理配置类
@Aspect 声明了这是一个切面类
@Around声明了一个表达式 如@within表达目标类型带有注解,
所有Controller在被调用的时候,都会执行@Around注解的方法,也就是aimpleAop方法。
pjp.proceed()是在执行完切面后会调用原有的业务方法,并将返回对象返回。
@Configuration
@Aspect
public class AopConfig {
@Around("@within(org.springframework.stereotype.Controller)")
public Object aimpleAop(final ProceedingJoinPoint pjp) throws Throwable{
try{
Object[] args = pjp.getArgs();
System.out.print("args:"+ Arrays.asList(args));
Object o = pjp.proceed();
System.out.print("return:"+ o);
return o;
}catch(Throwable e){
throw e;
}
}
}