Get the App
SLTechnology News&Howtos  ›  Internet Technology  › 

How to customize exception handling in springboot

Shulou Source: shulou.com Published: 2022-06-02 10:31:30 10月19日 Update

This article will explain in detail how to customize exception handling in springboot. The content of the article is of high quality, so the editor shares it for you as a reference. I hope you will have some understanding of the relevant knowledge after reading this article.

Global exception handling

1. Define handler

@ RestControllerAdvice

Public class SelfExceptionHandler {

/ * *

* deal with Exception

* @ param e

* @ return

, /

@ ExceptionHandler (Exception. Class)

Public Result handleServiceException (Exception e) {

E.printStackTrace ()

Return new Result (e)

}

}

2. Throw an exception where the business is written

Throw new Exception ("xxx")

To customize exception handling is to customize an exception class, such as BusinessException

Then replace the corresponding place in the handler

@ RestControllerAdvice

Public class SelfExceptionHandler {

/ * *

* deal with Exception

* @ param e

* @ return

, /

@ ExceptionHandler (BusinessException. Class)

Public Result handleServiceException (BusinessException e) {

E.printStackTrace ()

Return new Result (e)

}

}

If you want to render the processing results to the page, you can change @ RestControllerAdvice to @ ControllerAdvice

Then add the following methods:

@ ExceptionHandler (Exception. Class)

Public ModelAndView handleServiceException (Exception e) {

ModelAndView modelAndView = new ModelAndView ()

ModelAndView.setViewName ("500")

ModelAndView.addObject ("code", e.getMessage ())

Return modelAndView

}

On how to customize exception handling in springboot to share here, I hope the above content can be of some help to you, you can learn more knowledge. If you think the article is good, you can share it for more people to see.

Tags: Processing content place article more knowledge article good business overall situation that is method result quality page reference help related Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno macOS Apple MySQL Xiaomi OPPO Reno