package com.job4.aspect;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
@Aspect
@Component
public class LogAspect {
/** 定义切入点 */
@Pointcut("execution(public * com.job4.service.*.*(..))")
public void point1() {}
/** 定义通知 */
@Before("point1()")
public void test1(JoinPoint jp) {
System.out.println("日志开始了。。。");
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())
+ ", 调用了方法: " + jp.getSignature());
Object[] objs = jp.getArgs();
for(int i = 0; i<objs.length;i++ ){
System.out.println("参数"+(i+1)+"--->"+objs[i]);
}
}
@AfterReturning("point1()")
public void test2() {
System.out.println("日志结束了。。。");
}
}