1.aop学习笔记
切面
定义aop的业务逻辑
切入点
aop标记方法
通知
aop的增强逻辑
代码实现方式
1.定义切面
通知方式
切入点
放到目标方法上
2.代码结构
@Aspect
@Component
publicclassAjp {
@Pointcut("@annotation(com.cn.aop.Log)")
publicvoidmyMessage(){
}
@Around("myMessage()")
publicObject around(ProceedingJoinPointjoinPoint) throwsThrowable {
System.out.println("开始了");
MethodSignaturesignature=(MethodSignature) joinPoint.getSignature();
Methodmethod=signature.getMethod();
//获取注解的方式
Logannotation=method.getAnnotation(Log.class);
System.out.println("当前的方式"+annotation.desc());
System.out.println(joinPoint.proceed());
returnjoinPoint.proceed();
}
}
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public@interfaceLog {
Stringdesc() default"";
}