springboot全域性異常處理

專注的阿熊發表於2020-05-11

1.新建GlobalExceptionHandler 全域性異常處理類

@ControllerAdvice

@ResponseBody

public class GlobalExceptionHandler {

    /**

     * 處理MyException異常

     */

    @ExceptionHandler(MyException.class)

    public ReturnJson<Object> myExceptionHandler(MyException ex) {

        return new ReturnJson<Object>(ResultStatusEnum.FAILURE.getCode(), ResultStatusEnum.FAILURE.getMessage(), null);

    }

    

    /**

     * 處理RunTimeException異常

     */

    @ExceptionHandler(RuntimeException.class)

    public ReturnJson<Object> runtimeExceptionHandler(RuntimeException ex) {

        return new ReturnJson<Object>(ResultStatusEnum.FAILURE.getCode(), ResultStatusEnum.FAILURE.getMessage(), null);

    }

}

 

 

2.自定義異常類MyException繼承RuntimeException

 

@Getter

public class MyException extends RuntimeException{

    /*

     * 狀態碼

     */

    private int code;

    /*

     * 訊息提示

     */

    private String message;

    

    public MyException(int code, String message) {

        this.code = code;

        this.message = message;

tion ex) {MT5

  public MyException(ResultStatusEnum resultStatusEnum) {

        this.code = resultStatusEnum.getCode();

        this.message = resultStatusEnum.getMessage();

    }

 

}

 

 

3.用到的其他類

 

@Data

public class ReturnJson<T> {

    /*

     * 狀態碼

     */

    private int code;

    /*

     * 訊息提示

     */

    private String message;

    /*

     * 返回內容

     */

    private T info;

    

    public ReturnJson(int code,String message ,T info) {

        this.code=code;

        this.message=message;

        this.info=info;

    }

}

@NoArgsConstructor

@AllArgsConstructor

public enum ResultStatusEnum {

    /**

     * 請求成功

     */

    SUCCESS(200, "請求成功!"),

    

    /*

     * 請求失敗

     */

    FAILURE(400, "請求失敗!");

    

    @Getter

    @Setter

    private int code;

    

    @Getter

    @Setter

    private String message;

}


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2691377/,如需轉載,請註明出處,否則將追究法律責任。

相關文章