package com.pure.blog.handler;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestController;
@ControllerAdvice
@RestController
public class GlobalExceptionHandler {
@ExceptionHandler(value=IllegalArgumentException.class)
public String handleArgumentException(IllegalArgumentException e) {
return "<h1>"+e.getMessage()+"</h1>";
}
}
handler라는 패키지를 만들고 그 아래에 GlobalExceptionHandler라는 클래스를 만들었다.
Exception이 호출됐을 때 무언가 출력해주어야 하니까 RestController여야 하고 어디에서든지 예외가 발생하면 이 컨트롤러가 동작하도록 해야 하므로 @ControllerAdvice 어노테이션을 추가해 준다.
그리고 아래쪽에는 담당할 Exception으로 메서드를 만들어 주고 @ExceptionHandler에 value에 해당 예외를 넣어주면 된다.
DB에 없는 id를 검색하면 이렇게 표시가 된다.
'취업 준비 > Spring boot' 카테고리의 다른 글
20. 메인화면 만들기 w/ bootstrap4 (0) | 2022.01.25 |
---|---|
19. 스프링 기본 파싱전략과 JSON 통신 (0) | 2022.01.25 |
17. Delete 테스트 (0) | 2022.01.24 |
15. 전체 User select 및 paging 처리 (0) | 2022.01.24 |
14. id로 select 테스트 (0) | 2022.01.24 |