package com.aop;
import java.util.Date;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
@Aspect
@Component
public class DisposableAdvice {
private static final Logger LOGGER = LoggerFactory.getLogger(DisposableAdvice.class);
@Before("execution(* com.service.disposable.*.*(..))") //这里是切入的地方,应该拦在service里的方法,而不是controller一开始傻傻分不清
public void before(JoinPoint point){ // 用这个对象来获取相关的执行者信息,比如类名,方法名,请求参数等
LOGGER.info(point.getSignature() + " 开始时间 :" + new Date().toString());
}
@After("execution(* com.service.disposable.*.*(..))")
public void after(JoinPoint point){
LOGGER.info(point.getSignature() + " 结束时间:" + new Date().toString());
}
}