Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP 예외 객체란 무엇인가? JSP 페이지에서 발생할 수 있는 예외 유형 완벽 정리

JSP의 exception(예외) 객체는 이전 페이지에서 던져진(throw된) 예외를 감싸고 있는 래퍼(wrapper) 객체입니다. 이 객체는 주로 오류 상황이 발생했을 때 사용자에게 적절한 응답을 생성하기 위해 사용됩니다.


JSP 코드를 작성하다 보면 코드의 어느 부분에서든 코딩 오류가 발생할 수 있습니다. JSP 코드에서 발생할 수 있는 오류는 크게 다음 세 가지 유형으로 나눌 수 있습니다.


1. 체크드 예외(Checked Exceptions)

체크드 예외는 일반적으로 사용자의 실수이거나 프로그래머가 사전에 예측하기 어려운 문제로 인해 발생하는 예외입니다. 예를 들어, 파일을 열려고 했지만 해당 파일이 존재하지 않는 경우 예외가 발생합니다.

이러한 예외는 컴파일 시점에 단순히 무시할 수 없으며, 반드시 try-catch 블록으로 처리하거나 메서드 선언부에 throws 키워드를 통해 처리 의무를 명시해야 합니다.


2. 런타임 예외(Runtime Exceptions)

런타임 예외는 프로그래머가 충분히 사전에 방지할 수 있었던 예외를 의미합니다. 대표적인 예로 배열의 잘못된 인덱스 접근(ArrayIndexOutOfBoundsException)이나 null 참조(NullPointerException) 등이 있습니다.

체크드 예외와 달리, 런타임 예외는 컴파일 시점에는 무시되며 실행 중에 발생하게 됩니다.


3. 에러(Errors)

에러는 엄밀히 말해 예외(exception)가 아니라, 사용자나 프로그래머의 통제 범위를 벗어난 심각한 문제를 가리킵니다. 에러가 발생했을 때 개발자가 취할 수 있는 조치가 거의 없기 때문에 코드에서 일반적으로 무시됩니다.

예를 들어, 스택 오버플로우(StackOverflowError)나 JVM 자원 고갈 같은 상황이 여기에 해당합니다. 에러 역시 컴파일 시점에는 확인되지 않습니다.


정리

JSP에서 예외를 효과적으로 처리하려면 page 지시문의 isErrorPage 속성과 errorPage 속성을 활용하여 전용 오류 페이지를 구성하고, exception 객체를 통해 오류 정보를 확인한 뒤 사용자에게 친절한 안내 화면을 제공하는 것이 좋습니다.