728x90
예외 처리 방법
@ExceptionHandler
컨트롤러 내에서 특정 예외를 처리하기 위해 사용한다. 이 어노테이션을 메서드에 적용하여 해당 예외가 발생했을 때 특정한 응답을 반환하거나 예외를 처리할 수 있다.
@ControllerAdvice
전역적인 예외 처리를 정의할 수 있다. 이 어노테이션이 적용된 클래스는 모든 컨트롤러에서 발생하는 예외를 처리하는 메서드를 가질 수 있다.
@ControllerAdvice + ExceptionHandler
특정 예외에 대한 전역적인 처리와 특정 컨트롤러에서 발생하는 예외에 대한 처리를 동시에 수행할 수 있다. 일부 에러만 처리하고 싶을 경우에는 따로 범위설정이 가능하다.
@ResponseStatus
특정 예외가 발생했을 때 반환되는 HTTP 응답 상태 코드를 지정할 수 있다. 예외 클래스에 이 어노테이션을 적용하고, 원하는 HTTP 상태 코드를 지정할 수 있다.
try/catch
예외가 발생할 수 있는 코드 영역을 try 블록 안에 작성하고, 예외가 발생했을 때 처리할 코드를 catch 블록 안에 작성하는 방식이다. 여러 개의 catch 블록을 사용하여 다양한 예외 타입에 대한 처리를 구현할 수 있다. 하지만 이 방식은 메서드마다 예외 처리 코드를 중복해서 작성해야 할 수도 있고, 코드의 가독성이 떨어질 수 있다.
예시에 대한 설명 참고할 블로그
728x90
'개발일기 > Java' 카테고리의 다른 글
Stack, Queue, Array, Linked List (0) | 2023.06.08 |
---|---|
영속성 컨텍스트란 (0) | 2023.06.01 |
의존성 주입(Dependency Injection, DI) (0) | 2023.05.31 |
객체지향 프로그래밍(OOP) (0) | 2023.05.30 |
테스트 코드 작성 삽질 기록 (1) | 2023.04.21 |