springAOP--@Aspect

@Aspect
@Component
public class MyAspect {


private static final Logger log = LoggerFactory.getLogger(MyAspect.class);


@Pointcut("execution(public * com.example.demo..controller.*.*(..))")
public void myAspect() {
System.out.println("myAspect()++++++++++++++++++++");
log.info("myAspect()---------------------------------");
}

@Before(value = "myAspect()")
public void doBefore(JoinPoint joinPoint) {
System.out.println("222222222222222222");
}

@Around("myAspect()")
public Object around(ProceedingJoinPoint pjp) throws Throwable {
System.out.println("1111111111111111111");

Object proceed = pjp.proceed();

System.out.println("4444444444444444444");
return proceed;

}
@After("myAspect()")
public void after(JoinPoint joinPoint) {
System.out.println("55555555555555555");
}

}

333333是切点表达式 就是被切的类的方法

 

@AfterReturning

@AfterThrowing

 

springAOP 官方链接

posted @ 2020-12-28 15:52  jackwu74  阅读(73)  评论(0)    收藏  举报