전역 예외 처리기

요약

예외 처리는 전역 예외 처리기(global exception handler)를 사용해 처리

예외는 서비스 레이어에서 발생

Spring Boot에서 예외 처리를 하는 가장 좋은 방법은 전역 예외 처리기 입니다.

@ControllerAdvice 어노테이션이 적용된 클래스를 사용하여 예외 처리를 중앙 집중화하고 관리할 수 있게 해줍니다. 이렇게 하면 개별 컨트롤러와 서비스 클래스에서 예외 처리 로직을 작성하지 않아도 됩니다.

전역 예외 처리기를 사용하면 다음과 같은 이점이 있습니다:

  1. 중복 코드를 줄일 수 있습니다. 예외 처리 로직을 한 곳에 모아두면 유지 관리가 쉽습니다.
  2. 프로젝트 전체에서 일관된 예외 처리 방식을 사용할 수 있습니다.
  3. 특정 컨트롤러에서만 사용되는 예외 처리 방식을 쉽게 구현할 수 있습니다.

그렇다면 예외 처리 로직은 서비스 레이어에 있어야 할까요? 서비스 레이어에서 예외를 발생시키고, 전역 예외 처리기를 사용하여 예외를 처리하는 것이 좋습니다. 이렇게 하면 비즈니스 로직과 예외 처리 로직이 분리되어 코드가 더 깔끔해지며, 유지 관리가 쉬워집니다.

요약하자면, 예외 처리는 전역 예외 처리기(global exception handler)를 사용하여 처리하고, 예외는 서비스 레이어에서 발생시키는 것이 좋습니다. 이렇게 하면 코드의 구조가 명확해지고 일관성이 유지됩니다.