SpringBoot配置切面Aspect不生效原因

  首先,要导入jar包:


		
			org.springframework.boot
			spring-boot-starter-aop
		

第二可以在启动类加上注解(不需要)

@EnableAspectJAutoProxy(proxyTargetClass = true)

Aspect切面类代码

@Pointcut(value = "execution(public * com.qqri.api.controller..*.*(..))")
    public void webLog(){}

    @Before(value = "webLog()")
    public void doBefore(JoinPoint joinPoint) {
        // 接收到请求,打印请求内容
        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
        HttpServletRequest request = attributes.getRequest();
        // 打印请求内容
        log.info("URL : " + request.getRequestURL().toString());
        log.info("HTTP_METHOD : " + request.getMethod());
        log.info("IP : " + request.getRemoteAddr());
        log.info("CLASS_METHOD : " + joinPoint.getSignature().getDeclaringTypeName() + "." + joinPoint.getSignature().getName());
        log.info("ARGS : " + Arrays.toString(joinPoint.getArgs()));
    }


    @AfterReturning(returning = "ret", pointcut = "webLog()")
    public void doAfterReturning(Object ret) {
        // 处理完请求,返回内容
        log.info("RESPONSE : " + ret);
    }

 

你可能感兴趣的:(Java,Java)