输出@Requestbody和@Responsebody

时间:2015-10-22 10:46:45

标签: spring-boot aspect exceptionhandler

@Before("within(control..*)")
public void before(JoinPoint joinPoint) {
    // Set Process Start Time
    startTime = System.currentTimeMillis();
    Object[] arguments = joinPoint.getArgs();
    if (arguments != null && arguments.length > 0) {
        System.out.println("data:" + arguments[0]);
    }
}

我尝试使用@aspect输出请求体,但如果使用@valid时参数错误,则spring boot会抛出MethodArgumentNotValidException,并且不会输出@aspect日志。

如果服务器收到http请求,即使发生了一个例外,我怎么能输出json请求体?

1 个答案:

答案 0 :(得分:0)

我使用@AfterThrowing解决了这个问题。

@AfterThrowing(pointcut = "controllerInvocation()", throwing = "exception")
public void afterThrowing(JoinPoint joinPoint, Exception exception) {
    this.outputResponseLog(joinPoint, exception);
}