zoukankan      html  css  js  c++  java
  • 通过全局异常处理机制实现接口参数校验返回指定返回类型

    全局异常处理代码

    @RestController
    @ControllerAdvice
    @Slf4j
    public class ExceptionHandlerController {


    @ExceptionHandler(ValidException.class)
    public RspResult ytExceptionHandler(ValidException e) {
    return RspResult.failed(e.getCode(), e.getMessage());
    }

    @ExceptionHandler(RuntimeException.class)
    public RspResult runtimeExceptionHandler(RuntimeException e) {
    e.printStackTrace();
    log.info("RuntimeException{}", e);
    log.error("RuntimeException{}", e);
    return RspResult.failed(e.getMessage());
    }

    @ExceptionHandler(MethodArgumentNotValidException.class)
    public RspResult methodArgumentNotValidException(MethodArgumentNotValidException e) {
    e.printStackTrace();
    log.info("MethodArgumentNotValidException{}", e);
    log.error("MethodArgumentNotValidException{}", e);
    String[] msg = {"操作失败"};
    e.getBindingResult().getFieldErrors().forEach(error -> {
    msg[0] = msg[0].concat(",").concat(error.getDefaultMessage());
    });
    return RspResult.failed(msg[0]);
    }
    }

    接口参数实体类指定字段@NotNull controller方法参数加上注解@Valid校验 即可实现参数校验 加上 自动返回校验message
  • 相关阅读:
    杂谈
    P1441 砝码称重
    P3159 [CQOI2012]交换棋子
    P5200 [USACO19JAN]Sleepy Cow Sorting
    P5201 [USACO19JAN]Shortcut
    P5196 [USACO19JAN]Cow Poetry
    20190922UVA测试
    P4014 分配问题
    P4012 深海机器人问题
    P2050 [NOI2012]美食节
  • 原文地址:https://www.cnblogs.com/pengxupx/p/12834797.html
Copyright © 2011-2022 走看看