在异常捕捉类中定义方法如下:
@ResponseStatus(HttpStatus.OK)
@ExceptionHandler(MethodArgumentNotValidException.class)
@ResponseBody
public CommonResult<String> exceptionHandler(MethodArgumentNotValidException ex) {
log.error("异常信息:{}", ex.getMessage());
//获取Servlet容器
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
//获取request请求
HttpServletRequest request = attributes.getRequest();
CommonResult<String> commonResult = new CommonResult<>();
return commonResult
.setTimestamp(System.currentTimeMillis())
.setCode(ReturnCode.FAILED.getCode())
.setMsg(ReturnCode.FAILED.getMsg())
.setPath(request.getRequestURI())
.setData(ex.getBindingResult().getFieldError().getDefaultMessage());
}
网友评论