SpringBoot全局异常与统一返回结果

        当接口中包含多个修改数据库的操作时,如果保证在事务进行回滚的同时返回统一的结果对象呢???   

统一返回结果对象,参考如下连接的DataResult对象

       SpringBoot整合Swagger与统一返回结果问题

全局异常接收处理类

        当需要处理异常问题时,抛出BaseException异常或其子类即可

@ControllerAdvice 
public class GlobalExceptionHandler {

    @ExceptionHandler(value = BaseException.class)
    @ResponseBody
    public DataResult baseExceptionHandler(BaseException e){
        IErrorCode errorCode = e.getErrorCode();
        return DataResult.fail(errorCode.errCode()+"",errorCode.errName());
    }
}
public interface IErrorCode {
    /**错误名称 */
    String errMsg();
    /**错误码*/
    int errCode();
}
public enum XxxEnum implements IErrorCode {
    XX_XX(100001,"id不能为空");
    private int  code;
    private String message;
    XxxEnum (int code,String message){
        this.code = code;
        this.message = message;
    }
    @Override
    public String errMsg() {
        return message;
    }
    @Override
    public int errCode() {
        return code;
    }
}

你可能感兴趣的:(JAVA,SpringBoot,java)