Check & UnCheckException 과 Spring

개발하는개발자·2022년 10월 4일
0

Spring

목록 보기
1/6

Java 예외 종류

-체크 예외
-에러
-언체크 예외


에러란?
시스템에 비정상적인 상황이 발생했을 경우에 발생한다.
메모리 부족,스택오버플로우와 같은 오류를 말하며, 일반적으로 복구할 수 없다. 이러한 오류는 실제 운영중 발생하므로 개발자는 잘 알 수 없으며 대처하여 처리할 수 있는 방법이 없다.

예외란?
프로그램 실행 중 개발자 실수로 예기치 않은 상황이 발생했을때.
ArrayIndexOutofBouds, NullPointer, FileNotFound Exception들이 있으며 이런 오류는 복구가 거의 불가능하다.
자바는 예외를 2가지로 크게 나눈다.

  • Checked Exception
  • Unchecked Exception

그래서 Spring이랑 무슨 상관인데?

CheckedException의 경우 자바 개발자들의 의도와 마찬가지로 예외처리를 잘 하였다고 생각하여 roll-back하지 않는다 => 잘못된 경우 데이터 베이스 정합성이 망가진다.

하지만 try Catch문으로 많은것을 감싸는 경우 비즈니스 로직에 불필요한 코드가 들어가게 되고 가독성이 좋지 않다 => 공통 Checked Exception 클래스를 정의한다.

스프링이 제공하는 getMessage사용(Spring이 기본적으로 Exception에 대한 기능 제공)하여 필요한 에러 메시지를 전달해줄수 있으며 Controller단에서 RestControllerAdvice같은 어노테이션을 활용해 서비스단에 넘어오기 전에 Exception을 정의해 주면 좋다.

profile
하루에 하나씩 배우자

0개의 댓글