使用@Aound和注解的方式设置日志

1、创建日志注解

@Target({ElementType.METHOD})//方法注解
@Retention(RetentionPolicy.RUNTIME)//运行时可见
pulic @interface LogAnno{
	//操作类型 增删改查
	String czType() default "";
	//备注
	String remarks() default "";
}

2、循环通知的方法

@Component
@Aspect
pulic class LogAopAspect{
	@Aound("@annotation(LogAnno的路劲)")
	public Object aroundAdvice(ProceedingJoinPoint pip) throws Throwable{
		//1、方法执行前通知,相当于前置通知
		//获取方法签名
		MethodSignature ms = (MethodSignature )pip.getSignature();
		//获取方法
		Method method = ms.getMethod();
		//获取方法上面的注解
		LogAnno la = method.getAnnotation(LogAnno.class);
		//获取注解上面的属性
		//操作类型 增删改查
		String type = la.getczType();
		Object reO = null;
		try{
			//代理方法执行
			reO = pip.proceed();
			//方法执行完,相当于后置通知
			System.out.println("方法执行完,相当于后置通知");
		}catch(Exception e){
			System.out.println("抛出异常");
			throw e;
		}finally{
			System.out.println("最终执行");
		}
		result reO;
	}
}

3、将注解放到方法上面 @LogAnno(czType=“新增”)

经验分享 程序员 微信小程序 职场和发展