SpringBoot 학습 의 전역 이상 처리 설정(JSON 으로 돌아 가기)
3633 단어 SpringBoot전역 이상
수요
이 주 해 는 spring 2.3 이후 추 가 된 주해 로 주로 Controller 의 일부 공공 수요 의 저 침입 성 강화 에 도움 을 주 고@RequestMapping 레이 블 방법 에 작용 합 니 다.
@ExceptionHandler
이 주 해 는@ExceptionHandler 와 함께 사용 하 는 주해 로 오류 처리 기 를 사용자 정의 하여 json 문자열 을 직접 조립 하여 페이지 로 돌아 갈 수 있 습 니 다.
코드
전역 이상 처리 클래스 를 만 듭 니 다.다음 과 같 습 니 다.
실현 을 향 해 서로 다른 이상 이 다른 조작 이 있다 면@ExceptionHandler 의 value 값 을 다 르 게 하면 되 며,여러 개의 다른 이상 처 리 를 동시에 할 수 있 으 나 포함 상태 가 나타 나 지 않 습 니 다.
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
@ControllerAdvice
@ResponseBody
public class GlobalExceptionHandler {
/**
*
* @param request
* @param exception
* @return
* @throws Exception
*/
@ExceptionHandler(value=Exception.class)
public String allExceptionHandler(HttpServletRequest request,
Exception exception) throws Exception
{
exception.printStackTrace();
System.out.println(" :"+exception.getLocalizedMessage());
System.out.println(" :"+exception.getCause());
System.out.println(" :"+exception.getSuppressed());
System.out.println(" :"+exception.getMessage());
System.out.println(" :"+exception.getStackTrace());
return " , !";
}
}
이상 류 를 던 지 는 것 을 시 뮬 레이 션 합 니 다.다음 예 는 빈 포인터 이상 과 분모 가 이상 하지 않 습 니 다.
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/exceptionTest")
@ResponseBody
public class ExceptionTest {
@RequestMapping("/test")
public String test(){
Message msg = null;
msg.toString();
createException();
return " ";
}
private void createException(){
int i = 5/0;
}
}
Springboot 시작,실행 결과문자열 을 되 돌려 주기 때문에 json 도구 류 를 사용 하여 패키지 할 수도 있 고 json 문자열 을 되 돌려 줄 수도 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Java・SpringBoot・Thymeleaf】 에러 메세지를 구현(SpringBoot 어플리케이션 실천편 3)로그인하여 사용자 목록을 표시하는 응용 프로그램을 만들고, Spring에서의 개발에 대해 공부하겠습니다 🌟 마지막 데이터 바인딩에 계속 바인딩 실패 시 오류 메시지를 구현합니다. 마지막 기사🌟 src/main/res...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.